将一个二维数组a的行和列元素互换,存到另一个二维数组b中
#include <stdio.h>
int main()
{
system("mode con cp select=65001");
// 定义一个两行三列的数组
int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2];
printf("数组a为:\n");
for(int i=0;i<2;i++){
for(int j=0;j<3;j++){
printf("%10d",a[i][j]);
b[j][i]=a[i][j];
}
printf("\n");
}
printf("数组b为:\n");
for(int i=0;i<3;i++){
for(int j=0;j<2;j++){
printf("%10d",b[j][i]);
}
printf("\n");
}
}
有5个学生,已知每个学生有5门课的成绩,要求输出平均成绩最高的学生的成绩以及该学生的序号
二维数组行代表学生,列代表一门课的成绩
#include <stdio.h>
int main()
{
system("mode con cp select=65001");
int i,j,max_i;
float sum,max=0;
// 第6列为0,用来存放平均成绩
float s[5][6]={
{78,82,93,74,65},
{91,82,72,76,67},
{100,90,85,72,98},
{67,89,90,65,78},
{77,88,99,45,89},
};
for(i=0;i<5;i++){
sum=0;
for(j=0;j<5;j++){
sum=sum+s[i][j];
}
s[i][5]=sum/5;
}
for(i=0;i<5;i++){
if(s[i][5]>max){
max=s[i][5];
max_i=i;
}
}
printf("平均分最高的学生的序号为%d\n",max_i);
printf("最高的平均分为%7.2f\n",max);
}