|
发表于 2021-6-20 18:19:20
|
显示全部楼层
本楼为最佳答案
 不用指针
- #include<stdio.h>
- #include<stdlib.h>
- #include<time.h>
- int main(void)
- {
- //用随机函数产生10个0~100之内的整数,按从大到小排列输出
- int num[10], i, j, temp;
-
- srand((unsigned)time(NULL));
- for(i = 0; i < 10; i++)
- {
- num[i] = rand() % 100;
- }
-
- for(i = 0; i < 10 - 1; i++)
- for(j = 0; j - i - 1; j++)
- {
- if(num[i] > num[i + 1])
- {
- temp = num[i];
- num[i] = num[i + 1];
- num[i + 1] = temp;
- }
- }
- //定义一个a[5][6]的整数数组,用随机函数值填写每个单元,找出最大值的单元,输出其行号列号
- int a[5][6];
- int max = 0;
- int row, column;
-
- for(i = 0; i < 5; i++)
- for(j = 0; j < 6; j++)
- {
- a[i][j] = rand() % 100;
- if(max < a[i][j])
- {
- max = a[i][j];
- row = i;
- column = j;
- }
- }
- //定义一个3*3的整数数组,并输出对角元素之和
- int b[3][3];
- int sum = 0;
-
- for(i = 0; i < 3; i++)
- for(j = 0; j < 3; j++)
- {
- b[i][j] = rand() % 100;
- }
-
- sum = b[0][0] + b[1][1] + b[2][2] + b[0][2] + b[1][1] + b[2][0];
- //
- printf("随机函数产生10个0~100之内的整数,按从大到小排列输出\n");
-
- for(i = 0; i < 10; i++)
- {
- printf("%d ", num[i]);
- }
-
- printf("\n");
- printf("\n");
- printf("定义一个a[5][6]的整数数组,用随机函数值填写每个单元,找出最大值的单元,输出其行号列号\n");
-
- printf("最大值 = %d\n", max);
- printf("行号 = %d \n列号 = %d", row+1, column+1);
-
- printf("\n");
- printf("\n");
- printf("定义一个3*3的整数数组,并输出对角元素之和\n");
-
- for(i = 0; i < 3; i++)
- {
- for(j = 0; j < 3; j++)
- {
- printf("%d ", b[i][j]);
- }
- printf("\n");
- }
-
- printf("对角元素之和 = %d", sum);
-
- return 0;
- }
复制代码
指针
- #include<stdio.h>
- #include<stdlib.h>
- #include<time.h>
- void Change(int *a, int *b);
- void Change(int *a, int *b)
- {
- int temp;
-
- temp = *a;
- *a = *b;
- *b = temp;
- }
- int main(void)
- {
- srand((unsigned)time(NULL));
- //交换两个实参的值
- printf("交换两个实参的值\n");
- int num_1 = rand() % 100, num_2 = rand() % 100;
-
- printf("num_1 = %d, num_2 = %d\n", num_1, num_2);
-
- Change(&num_1, &num_2);
-
- printf("num_1 = %d, num_2 = %d\n", num_1, num_2);
-
- return 0;
- }
复制代码
初学,有问题请指出 |
|