c语言代码求解? 5

任务描述本关任务:有一个3*4矩阵,找出每行中最大的元素并与第1列元素交换。具体要求如下:1.使用二维数组存放该3*4矩阵2.为二维数组输入数据。3.输出原矩阵并和处理后... 任务描述
本关任务:有一个3*4矩阵,找出每行中最大的元素并与第1列元素交换。具体要求如下:
1.使用二维数组存放该3*4矩阵
2.为二维数组输入数据。
3.输出原矩阵并和处理后的矩阵进行比较。
输入:
第一行为两个整数,表示3x4的矩阵。
第二行开始为矩阵赋值。
输出:
第一行输出提示”原矩阵:”。
第二行开始输出原矩阵数据。
接下来一行输出提示”处理后:”。
接下来一行开始输出处理后的矩阵数据。
相关知识
相关知识略
编程要求
请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充,完成编写数组元素交换的小程序。
测试说明
平台会对你编写的代码进行测试:
测试输入:
3 4
1 2 3 4
5 6 7 8
9 10 11 12
预期输出:
原矩阵:
1 2 3 4
5 6 7 8
9 10 11 12
处理后:
4 2 3 1
8 6 7 5
12 10 11 9
展开
 我来答
White_MouseYBZ
2019-12-18 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6355万
展开全部

没有看到要修改的代码,只好写一个作参考……

代码文本:

#include "stdio.h"

int main(int argc,char *argv[]){

int a[10][10],i,j,k,n,m;

printf("Enter n & m(int 0<n,m<10)...\n");

if(scanf("%d%d",&m,&n)!=2 || m<1 || n<1 || n>10 || m>10){

printf("Input error, exit...\n");

return 0;

}

printf("Enter the %d integers, %d digital a line, separated by ' '\n",n*m,n);

for(i=0;i<m;i++)

for(j=0;j<n;scanf("%d",a[i]+j++));

printf("原矩阵:\n");

for(i=0;i<m;i++){

for(j=0;j<n;printf("%5d",a[i][j++]));

putchar('\n');

}

for(i=0;i<m;i++){

for(k=j=0;j<n;j++)

if(a[i][k]<a[i][j])

k=j;

j=a[i][k],a[i][k]=a[i][0],a[i][0]=j;

}

printf("处理后:\n");

for(i=0;i<m;i++){

for(j=0;j<n;printf("%5d",a[i][j++]));

putchar('\n');

}

return 0;

}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式