(4)从键盘输入2行3列数,求每行的最大值和每列的最大值,和所有数的最大值 #include<stdio.h> int main() int a[2][3].ij,max1,max2,max; for(i=0;i<2;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); max=a[O][0]; for(i=0;i<2;i++) max1=a[i][O]; for(j=0;j<3;j++) XXXXXX printf("%d\t",max1); for(j=0;j<3;j++)
时间: 2024-03-05 21:51:22 浏览: 45
从键盘或者命令行输入3个数,求这三个数的最大值
这段代码也存在语法错误,无法编译运行。在求每行和每列最大值的部分,应该是`if(a[i][j]>max1) max1=a[i][j];`和`if(a[j][i]>max2) max2=a[j][i];`。在输出每行和每列最大值的部分,应该是`printf("%d\t",max1);`和`printf("%d\t",max2);`。修改后的代码如下:
```
#include<stdio.h>
int main() {
int a[2][3],i,j,max1,max2,max;
for(i=0;i<2;i++) {
for(j=0;j<3;j++) {
scanf("%d",&a[i][j]);
}
}
max=a[0][0];
for(i=0;i<2;i++) {
max1=a[i][0];
for(j=0;j<3;j++) {
if(a[i][j]>max1) {
max1=a[i][j];
}
if(a[j][i]>max2) {
max2=a[j][i];
}
if(a[i][j]>max) {
max=a[i][j];
}
}
printf("第%d行的最大值为:%d\n",i+1,max1);
}
for(j=0;j<3;j++) {
printf("第%d列的最大值为:%d\n",j+1,max2);
}
printf("所有数的最大值为:%d\n",max);
return 0;
}
```
阅读全文