#include <
stdio.h>//
头文件int main()//定义
main函数{
int a[3][3], i, j, max;//定义变量和数组
for (i = 0; i < 3; ++i){//循环行
for (j = 0; j < 3; ++j){//循环列
scanf ("%d", &a[i][j]);//输入第i行第j列
}
}
max = a[0][0];//初始化max
for (i = 0; i < 3; ++i){
for (j = 0; j < 3; ++j){
if (max < a[i][j])max = a[i][j];//如果max < a[i][j]就让max = a[i][j]
}
}
printf ("%d\n", max);//输出
return 0;
}
追问这个不是应该用void主函数吗
追答都可以,这个是标准的。用void的形式如下:
#include <stdio.h>//头文件
void main()//定义main函数
{
int a[3][3], i, j, max;//定义变量和数组
for (i = 0; i < 3; ++i){//循环行
for (j = 0; j < 3; ++j){//循环列
scanf ("%d", &a[i][j]);//输入第i行第j列
}
}
max = a[0][0];//初始化max
for (i = 0; i < 3; ++i){
for (j = 0; j < 3; ++j){
if (max < a[i][j])max = a[i][j];//如果max < a[i][j]就让max = a[i][j]
}
}
printf ("%d\n", max);//输出
}
追问这两个也没啥区别啊
追答有点问题,你求得是每行最大值,刚才给你的是整个矩阵的最大值了
我给改了一下
#include //头文件
int main()//定义main函数
{
int a[3][3], i, j, max;//定义变量和数组
for (i = 0; i < 3; ++i){//循环行
for (j = 0; j < 3; ++j){//循环列
scanf ("%d", &a[i][j]);//输入第i行第j列
}
}
for (i = 0; i < 3; ++i){
max = a[i][0];//初始化max
for (j = 0; j < 3; ++j){
if (max < a[i][j])max = a[i][j];//如果max < a[i][j]就让max = a[i][j]
}
printf ("%d\n", max);//输出
}
return 0;
}