代码如下:
#include<stdio.h>
int main() {
int list[4][4] = {0};
printf("请输入4*4的数字,同一排的每个数字用空格隔开:\n");
// 循环输入
for ( int i = 0 ; i < 4 ; i++ ) {
for ( int j = 0 ; j < 4; j++ ) {
scanf("%d", &list[i][j]);
}
}
// 令最大值为第一个数
int max = list[0][0];
// 和为0
int area = 0;
// 对角线和为0
int diagonal = 0;
// 循环遍历并打印
for ( int i = 0 ; i < 4 ; i++ ) {
for ( int j = 0 ; j < 4 ; j++ ) {
// 打印数字
printf("%d ",list[i][j]);
// 总和加上这个数字
area += list[i][j];
// 如果这个数大于已知最大数 最大数就等于这个数
if ( list[i][j] > max ) {
max = list[i][j];
}
// 如果是对角线 对角线和就加上这个数
if ( i - j == 0 || i + j == 3 ) {
diagonal += list[i][j];
}
}
// 遍历完一排了 打印回车
printf("\n");
}
// 打印别的
printf("最大的数是 :%d\n", max);
printf("总和是 :%d\n", area);
printf("对角线和是 : %d\n", diagonal);
}
1 2 3 4
5 6 7 8
8 7 6 5
4 3 2 1
上面的大哥我我快,我要求不高,有用给我回一个谢谢。
#include<stdio.h>
void main(){
int i,j;
int sum=0;
int sum1=0;
int max=0;
int temp=0;
int arr[4][4];//定义数组
for(i=0;i<4;i++){//循环输入
for(j=0;j<4;j++){
printf("请输入第 %d 行的第 %d 列:",i+1,j+1);
scanf("%d",&arr[i][j]);
}
}
//遍历读取每一个数
for(i=0;i<4;i++){
for(j=0;j<4;j++){
printf("%d ",arr[i][j]);//取出每一个数
sum += arr[i][j];//相加
//对角线和
if(i==j || i==3-j){
sum1 += arr[i][j];
}
//找最大数
if(arr[i][j] > max){
max = arr[i][j];
}
}
printf("\n");
}
printf("sum = %d\nsum1= %d\nmax=%d",sum,sum1,max);
}