问题:
输入n,在输入n*n全部数据,计算元素每列元素的最大值之和
分析:
1,定义一个数组用来存储每列的最大值
2,在遍历数组的时候,按行来遍历,每行元素每次都和对应的max数组进行比较,将最大的存到max中
代码:
int n;
scanf("%d",&n);
int a[n][n],i,j,max[n];
//初始化max数组
for(i=0;i<n;i++){
max[i]=0;
}
//输入a数组数据
for(i=0;i<n;i++){
for(j=0;j<n;j++){
scanf("%d",&a[i][j]);
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(a[i][j]>max[j]){
max[j]=a[i][j];
}
}
}
int sum=0;
for(i=0;i<n;i++){
sum+=max[i];
printf("%d ",max[i]);
}
printf("%d",sum);
结果: