永发信息网

将一个3行5列二维数组每一行的最小值放到最前面,最大值放到最后面。 C语言题,谢谢啦

答案:3  悬赏:50  手机版
解决时间 2021-02-25 18:54
将一个3行5列二维数组每一行的最小值放到最前面,最大值放到最后面。 C语言题,谢谢啦
最佳答案
这个代码是用产生随机数的方法给二维数组赋值,如果不需要,就把对应的代码删了,再初始化数组就行了,代码功能见代码中的注释。 #include #include void main() {int a[5][5],i,j,k,min; randomize(); for(i=0;i<5;i++) for(j=0;j<5;j++) a[i][j]=random(100); for(i=0;i<5;i++) {for(j=0;j<5;j++) printf("%3d",a[i][j]); printf("\n"); } for(i=0;i<5;i++) {k=0; min=a[i][0]; for(j=1;j<5;j++) {if(a[i][j]
全部回答
  • 1楼网友:等灯
  • 2021-02-25 06:28
请问为什么输入的数组有时候符合该情况,有时候不符合
  • 2楼网友:撞了怀
  • 2021-02-25 06:07
#include<stdio.h> #define N 3 #define M 5 void main() { int a[N][M],i,j,k,m; for ( i=0;i<N;i++ ) for ( j=0;j<M;j++ ) scanf("%d",&a[i][j]); for ( i=0;i<N;i++ ) { for ( j=1,m=a[i][0];j<M;j++ ) if ( a[i][m]>a[i][j] ) a[i][m]=a[i][j]; k=a[i][0]; a[i][0]=a[i][m]; a[i][m]=k; for ( j=1,m=a[i][0];j<M;j++ ) if ( a[i][m]<a[i][j] ) a[i][m]=a[i][j]; k=a[i][M-1]; a[i][M-1]=a[i][m]; a[i][m]=k; } for ( i=0;i<N;i++,printf("\n") ) for ( j=0;j<M;j++ ) printf("%d ",&a[i][j]); }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯