二维数组
1.定义一个4行5列的二维数组2、通过scanner赋值
3、查找数组中,每一行中的最大数
4、将每行中的最大数,存储到一个一维数组中
5、输出每行中的最大值
#include<stdio.h> void maxi(int [][5],int n); int main(void) { int ch[4][5]; int i,j; for(i = 0; i < 4; i++) { for(j = 0; j < 5; j++) scanf("%d",&ch[i][j]); } maxi(ch,4); return 0; } void maxi(int ch[][5],int n) { int i,j; int max = ch[0][0]; int ch1[3]; for(i = 0; i < 4; i++){ for(j = 0; j < 5; j++) if(ch[i][j] > max) max = ch[i][j]; ch1[i] = max; printf("%d",ch1[i]); putchar('\n'); } }
#include<stdio.h> #define m 4 #define n 5 int main() { int a[m][n]; int b[m]; int max; for(int i=0;i<m;i++) { for(int j=0;j<n-1;j++) { scanf("%d",&a[i][j]); } } for(int i=0;i<m;i++) { for(int j=0;j<n-1;j++) { if(a[i][j]>a[i][j+1]) { max=a[i][j]; a[i][j]=a[i][j+1]; a[i][j+1]=max; } else max=a[i][j+1]; } b[i]=max; printf("%d",b[i]); } return 0; }
#include<stdio.h> #define SA sizeof (a) #define SB sizeof (a[0]) #define SC sizeof (int) int main() { int a[4][5]; int b[SA/SB]={0}; int *p=a[0]; for (;p<a[0]+SA/SC;++p) scanf("%d",p); for (p=a[0];p<a[0]+SA/SC;++p) { if ((p-a[0])%(SB/SC)==0) b[(p-a[0])/(SB/SC)]=*p; else b[(p-a[0])/(SB/SC)]=b[(p-a[0])/(SB/SC)]>*p?b[(p-a[0])/(SB/SC)]:*p; } for (p=b;p<b+SA/SB;++p) printf("%d ",*p); printf("\n"); return 0; }