C++编程题:手动输入一个3行4列的二维数组a,把二维数组a的每一行的最大元素放到一个一维的数组中。

例如:a[3][4]={{1,2,7,8},{3,4,9,10},{5,6,11,12}},则b[3]={8,10,12}
2024-11-23 02:12:47
推荐回答(2个)
回答(1):

#include
using namespace std;
int main() {
int a[3][4];
int b[3],i,j,max;
for(i=0;i<3;i++){
for(j=0;j<4;j++){
cin>>a[i][j];
}
}
for(i=0;i<3;i++){
max=a[i][0];
for(j=1;j<4;j++){
if(maxmax=a[i][j];
}
}
b[i]=max;
}
cout<<"b[3]={";
for(i=0;i<3;i++){
cout<}
cout<<"\b";
cout<<"}";
return 0;
}

回答(2):

这是代码,我将一些行的代码都注释了,希望你能理解。
#include
using namespace std;
int max(int a, int b) //定义max函数,用于返回两数之间最大值(给mymax函数用)
{
return a > b ? a : b;
}
int mymax(int a, int b, int c, int d) //定义mymax函数,用于返回四数之间最大值
{
return max(max(max(a, b), c), d);
}
int main()
{
int a[3][4], b[3]; //定义数组
for (int i = 0; i < 3; i++) //定义循环用于遍历数组a的行
{
for (int j = 0; j < 4; j++) //定义循环用于遍历数组a的列
{
cin >> a[i][j]; //用cin来输入数据到数组a的指定元素
}
b[i] = mymax(a[i][0], a[i][1], a[i][2], a[i][3]); //求该行中最大值存储到b[i]
}
//剩下的操作是开发者自愿编写(毕竟并未要求输出之类的操作,只说存储)
return 0; //退出程序
}