user-0 提问: 求助C语言数组实训题

回复:
user: user-1
content: 给个思路，具体代码自己写吧 int a[10][10] ={0};  int i,j; 先输入二维数组的值 1. int count = 0;  //大于90的元素个数 for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         if (a[i][j] > 90)             count++;     } } 2.求对角线元素的和 int sum = 0; for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         if (i == j)             sum += a[i][j];     } } 3.每行每列的和 int hsum[10] = {0}; int lsum[10] ={0};  for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         hsum[i] += a[i][j]; //每行之和         lsum[i] += a[j][i];  //每列之和           } } 4. int max = a[0][0];      int min = a[0][0]; for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         if (a[i][j] > max)             max = a[i][j];    //最大值         if (a[i][j] < min)             min = a[i][j];   //最小值      } }

user: user-2
content: //#include<iostream> 可改为  #include<stdio.h>  可将 system("pause"); 删除 #include<iostream> #include<time.h>  int main() { 	int		a[10][10] = { 0 };  //数组初始化为0 	int		i = 0; 	int		j = 0; 	int		count = 0;          //大于90的元素个数 	int		sum1 = 0;           //对角线的元素个数之和 	int		sum2[10] = { 0 };   //每行元素的和 	int		sum3[10] = { 0 };   //每列元素的和 	int		max = 0;		    //最大值 	int		min = 100;			//最小值  	srand(time(0));				//初始化元素种子 	for (i = 0; i < 10; i++) 	{ 		for (j = 0; j < 10; j++) 		{  			a[i][j] = rand() % 100 + 1;  //随机生成100以内的元素 		} 	} 	printf("二维数组的元素为：\n"); 	for (i = 0; i < 10; i++) 	{ 		for (j = 0; j < 10; j++) 		{ 			printf("%d  ", a[i][j]); 		} 		printf("\n"); 	}   	//01大于90的元素的个数 	for (i = 0; i < 10; i++) 	{ 		for (j = 0; j < 10; j++) 		{ 			if (a[i][j] > 90) 			{ 				count = count + 1; 			}  		} 	} 	printf("大于90的元素的个数: %d\n", count);   	//02对角线的元素个数之和 	for (i = 0; i < 10; i++) 	{ 		j = i; 		sum1 += a[i][j]; 	} 	printf("对角线的元素个数之和:%d \n", sum1);   	//03 每行和每列的和 	for (i = 0; i < 10; i++) 	{ 		for (j = 0; j < 10; j++) 		{ 			sum2[i] += a[i][j]; 			sum3[i] += a[j][i];  		} 	} 	printf("每行的和为:"); 	for (i = 0; i < 10; i++) 	{ 		printf("%d  ", sum2[i]); 	} 	printf("\n"); 	printf("每列的和为:"); 	for (i = 0; i < 10; i++) 	{ 		printf("%d  ", sum3[i]); 	} 	printf("\n");   	//最大元素和最小元素 	for (i = 0; i < 10; i++) 	{ 		for (j = 0; j < 10; j++) 		{ 			//最大 			if (max < a[i][j]) 			{ 				max = a[i][j]; 				 			}  			//最小 			if (min > a[i][j]) 			{ 				min = a[i][j]; 			} 		} 	} 	printf("最大元素为：%d\n", max); 	printf("最小元素为：%d\n", min);  	system("pause"); }

user: user-0
content: 引用 3 楼 ?Victor.?? 的回复:你得学着自己做了  不然期末考试危险了  我打算下个星期回学校开始重学一遍。。。不过挂科应该不至于

user: user-3
content: 你得学着自己做了  不然期末考试危险了

user: user-0
content: 引用 1 楼 chxchxkkk 的回复:给个思路，具体代码自己写吧 int a[10][10] ={0};  int i,j; 先输入二维数组的值 1. int count = 0;  //大于90的元素个数 for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         if (a[i][j] > 90)             count++;     } } 2.求对角线元素的和 int sum = 0; for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         if (i == j)             sum += a[i][j];     } } 3.每行每列的和 int hsum[10] = {0}; int lsum[10] ={0};  for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         hsum[i] += a[i][j]; //每行之和         lsum[i] += a[j][i];  //每列之和           } } 4. int max = a[0][0];      int min = a[0][0]; for (i=0; i<10; i++) {     for (j=0; j<10; j++)     {         if (a[i][j] > max)             max = a[i][j];    //最大值         if (a[i][j] < min)             min = a[i][j];   //最小值      } }我是属于一点不会的那种。。。。