/*3、写一个程序,定义一个学生结构体,至少要含4个数据项,其中有一项用来保存学生成绩。用此结构体存储班级上的所有学生信息(真实)。要求写一个程序,至少含有四个函数,分别实现:(40分)
(1)输入学生信息
(2)输出学生信息
(3)求出班上最高分、最低分和平均分
(4)显示最高分、最低分同学和成绩大于平均分的所有学生信息。
*/
#include<stdio.h>
struct student
{
long ID;
char name[8];
char sex;
int score;
}stu[20];
int shuru()
{
int c,i;
printf("请输入你这次需要输入的学生个数:");
scanf("%d",&c);
printf("请输入学生学号,姓名,性别,成绩:");
for(i=0;i<c;i++)
{
scanf("%ld%s%c%d",&stu[i].ID,&stu[i].name[8],&stu[i].sex,&stu[i].score);
}
return i;
}
void shuchu(int x)
{
int i;
for(i=0;i<x;i++)
{
printf("%ld%s%c%d",&stu[i]);
}
}
void qiu(int y)
{
int i,max=0,min=100,p,s;
for(i=0;i<y;i++)
{
if((stu[i].score)>=max)
{
max=stu[i].score;
}
}
printf("最大值为%d\n",max);
for(i=0;i<y;i++)
{
if((stu[i].score)<=100)
{
min=stu[i].score;
}
}
printf("最小值为%d\n",min);
for(i=0;i<y;i++)
{
s=s+(stu[i].score);
}
p=s/y;
printf("平均分为:%d",p);
}
void xuan(int z)
{
int i,max=0,min=100,p,s;
for(i=0;i<z;i++)
{
if((stu[i].score)>=max)
{
max=stu[i].score;
}
}
printf("最大值为%d\n",max);
for(i=0;i<z;i++)
{
if((stu[i].score)<=100)
{
min=stu[i].score;
}
}
printf("最小值为%d\n",min);
for(i=0;i<z;i++)
{
s=s+(stu[i].score);
}
p=s/z;
for(i=0;i<z;i++)
{
if((stu[i].score)>p)
{
printf("%ld%s%c%d",&stu[i]);
}
}
}
int main()
{
int n,t;
while(1)
{
printf("1.输入学生信息\n2.输出学生信息\n3.求班上最高分最低分和平均分\n4.显示最高分、最低分同学和成绩大于平均分的所有学生信息。");
scanf("%d",&n);
switch(n)
{
case 1:
shuru();break;
case 2:
shuchu(t);break;
case 3:
qiu(t);break;
case 4:
xuan(t);break;
}
t=shuru();
}
return 0;
}
cj
最新推荐文章于 2022-09-28 17:47:52 发布