(一)将一个二维数组a的行和列互换并输出
int a[2][3]={{1,2,3},{2,3,4}};
int b[3][2],i,j;
for(i=0;i<2;i++){
for( j=0;j<3;j++){
b[j][i] =a[i][j];
}
}
for( i=0;i<3;i++)//输出
{
for(j=0;j<2;j++)
{
printf("%d",b[i][j]);
}
printf("\n");//输完没行使其换行,排列更规范。
}
(二)有一个单位,下设3个组,每组有4人,要求出全体人员中工资最高者,以及该职工所在的班组号和该职工在该班组中的序号。
int a[3][4]={{123,345,567,876},{234,567,987,654},{7899,234,678}};
int max=a[0][0],row,roa,i,j;
for(i=0;i<3;i++){
for(j=0;i<4;i++){
if(a[i][j]>max){
max=a[i][j];
row=i;//记录组号
roa=j;//记录在第几个
}
}
}
printf("最高工资:%d,在第%d组%d号",max,row+1,roa+1);
(三)给一个对角矩阵赋值,使其对角线上的值全为1,其他值全为0
int a[3][3]={0};
int i,j;
for(i=0;i<3;i++)
{
a[i][i]=1;//只让对角线为1;
}
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf("%d",a[i][j]);
printf(" ");
}
printf("\n");
}