C语言问题怎样用二维数组编写学生成绩单。 5
使用二维数组处理5个学生的4门课程成绩,完成如下功能:1.输入成绩时按照列(即每门课程)的方式输入2.计算每门课程的平均分和最高分并输出成绩单3.输出每门课程的最高分的学...
使用二维数组处理5个学生的4门课程成绩,完成如下功能:
1.输入成绩时按照列(即每门课程)的方式输入
2.计算每门课程的平均分和最高分并输出成绩单
3.输出每门课程的最高分的学生的姓名
所有的代码放在一个程序中。 展开
1.输入成绩时按照列(即每门课程)的方式输入
2.计算每门课程的平均分和最高分并输出成绩单
3.输出每门课程的最高分的学生的姓名
所有的代码放在一个程序中。 展开
1个回答
展开全部
按照你要求,用二维数组编写。颂侍
#include<stdio.h>
#include<string.h>
int main( )
{
char stu[4][100],stuName[5][5]={"小明","小王","小陈","小李","小丽"},score[4],maxName[4][5];//成绩最多输入3位数999
int i,j,num,sum,ave[4],maxScore[4]={0,0,0,0};
for(i=0;i<4;i++)
{
stu[i][0]=0;
sum=0;
printf("请输入学科%d各个学生的成绩:\n",i+1);
for(j=0;j<5;j++)
{
printf("%15s的成绩:",stuName[j]);
scanf("%d",&num);
sprintf(score,"%d",num);
if(maxScore[i]<num)//记录每科最高成绩的人
{
maxScore[i]=num;
悉型 strcpy(maxName[i],stuName[j]);
}
sum=sum+num;//记录每科总分
strcat(stu[i],stuName[j]);//拼接成绩单
strcat(stu[i],":");
strcat(stu[i],score);
strcat(stu[i],";");
}
ave[i]=sum/5;//记录每科平均分
}
for(i=0;i<4;i++)
{
printf("学科%d的最高分为%s:%d,平均分为%d。\n 所有学生野陆吵成绩单为:%s。\n",i+1,maxName[i],maxScore[i],ave[i],stu[i]);
}
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询