//将代码中注释要求的功能实现
#include <stdio.h>
typedef struct Studentinformation
{
char xuehao[20];
char name[20];
float chengji;
}Stu;
int main()
{//处理45个学生的信息(批量),定义45个Stu类型的数组
int i;
Stu s[3] ={
{"20201329389","张三",90}, {"20201327656","李四",88}
} ;
//读入数组元素s[2]的初始值
printf("input No3 student infomation:");
scanf("%s%s%f",s[2].xuehao, s[2].name, &s[2].chengji);
printf ("编号\t 学号 \t\t\t姓名 \t成绩\n");
//输出s数组中三个学生的信息
for(i=0; i<3; i++)
printf ("学生%d\t %s \t\t%s \t%f\n",i+1,s[i].xuehao,s[i].name,s[i].chengji);
//找出最高分,输出最高分学生的基本信息(进阶版:写函数完成该功能)
//求出所有人的平均成绩 (进阶版:写函数完成该功能)
printf("*\n");
return 0;
}
如有帮助,还望采纳。
#include <stdio.h>
typedef struct Studentinformation
{
char xuehao[20];
char name[20];
float chengji;
} Stu;
Stu get_max(Stu *p, int n)
{
Stu max = p[0];
for (int i = 1; i < n; i++)
{
if (p[i].chengji > max.chengji)
{
max = p[i];
}
}
return max;
}
float get_average(Stu *p, int n)
{
float sum = 0;
for (int i = 0; i < n; i++)
{
sum += p[i].chengji;
}
return sum / n;
}
int main()
{ //处理45个学生的信息(批量),定义45个Stu类型的数组
int i;
Stu s[3] = {
{"20201329389", "张三", 90}, {"20201327656", "李四", 88}};
//读入数组元素s[2]的初始值
printf("input No3 student infomation:");
scanf("%s %s %f", s[2].xuehao, s[2].name, &s[2].chengji);
printf("编号\t 学号 \t\t\t姓名 \t成绩\n");
//输出s数组中三个学生的信息
for (i = 0; i < 3; i++)
printf("学生%d\t %s \t\t%s \t%f\n", i + 1, s[i].xuehao, s[i].name, s[i].chengji);
//找出最高分,输出最高分学生的基本信息(进阶版:写函数完成该功能)
Stu max = get_max(s, 3);
printf("最高分学生信息:\n");
printf("学号:%s\n姓名:%s\n成绩:%f\n", max.xuehao, max.name, max.chengji);
//求出所有人的平均成绩 (进阶版:写函数完成该功能)
float average = get_average(s, 3);
printf("平均成绩:%f\n", average);
printf("*\n");
return 0;
}