概述
函数接口定义:
void InputData(STU *p,int num); STU *FindMaxIndex(STU *p,int num);
裁判测试程序样例:
在这里给出函数被调用进行测试的例子。例如: #include <stdio.h> #define N 5 typedef struct { int id; char name[20]; int math; int chinese; double aver; }STU; void InputData(STU *p,int num); STU *FindMaxIndex(STU *p,int num); int main(void) { STU classone[N]; STU *pmax; InputData(classone,N); pmax=FindMaxIndex(classone,N); printf("maxinfo:%d %s %d %d %.1fn",pmax->id,pmax->name,pmax->math,pmax->chinese,pmax->aver); return 0; } /* 请在这里填写答案 */
输入样例:
2 张 78 34
1 李 67 89
4 王 90 67
3 刘 85 95
5 赵 56 89
输出样例:
maxinfo:3 刘 85 95 90.0
//简单的输入问题
void InputData(STU *p,int num)
{
for(int i=0;i<num;i++)
{
scanf("%d %s %d %d",&(p+i)->id,(p+i)->name,&(p+i)->math,&(p+i)->chinese);
(p+i)->aver=(double)(((p+i)->math+(p+i)->chinese)/2.0);
}
}
//简单的遍历数组找最大值问题
STU *FindMaxIndex(STU *p,int num)
{
double max=-100.0;
STU* ret=NULL;
for(int i=0;i<num;i++)
{
if((p+i)->aver>max)
{
max=(p+i)->aver;
ret=(p+i);
}
}
return ret;
}
可以试试自己qsort排序后再输出最大值
最后
以上就是开心发箍为你收集整理的有N名学生,每个学生的数据包括学号、姓名、数学成绩、语文成绩,从键盘输入N名学生的数据,并计算出每个学生的平均成绩,最后显示最高平均分的学生的信息,包括学号,姓名,两门课的成绩,平均分数(保留小数点后的全部内容,希望文章能够帮你解决有N名学生,每个学生的数据包括学号、姓名、数学成绩、语文成绩,从键盘输入N名学生的数据,并计算出每个学生的平均成绩,最后显示最高平均分的学生的信息,包括学号,姓名,两门课的成绩,平均分数(保留小数点后所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复