结构体的应用

#include<stdio.h>
#define N 5
struct student 
{
int num;   //学号
float score[4];//四门课的成绩
float sum,t;          //总成绩
float aver;             //平均成绩
int order;          //名次
};
  
main()
{
struct student stu[N];
int i,j;
printf("输入学生的学号以及四门成绩");
for(i=0;i<N;i++)
{
scanf("%d%f%f%f%f",&stu[i].num,&stu[i].score[0],&stu[i].score[1],&stu[i].score[2],&stu[i].score[3]);//输入数据
         stu[i].sum=stu[i].score[0]+stu[i].score[1]+stu[i].score[2]+stu[i].score[3];
   stu[i].aver=stu[i].sum/4.0;


}




 int i,j;

for(j=0;j<N;j++)
for(i=0;i<N-1-j;i++)
if(stu[i].aver>stu[i+1].aver)
{
stu[i].t=stu[i].aver;
stu[i].aver=stu[i+1].aver;
stu[i+1].aver=stu[i].t;
}
printf("成绩排名\n");
printf("学号   语文   数学  英语   物理\n");
for(i=0;i<N;i++)

printf("%d%f%f%f%f%f%f",stu[i].num,stu[i].score[i],stu[i].score,stu[i].score,stu[i].score,stu[i].sum,stu[i].aver);
printf("\n");
}

1.1设计一个程序,统计一个班(最多有35人)的学生成绩,要求能实现如下四个功能:

       (1) 由键盘输入每个学生的学号和四门课程的成绩

       (2) 计算每个学生的平均成绩和总成绩

       (3) 按总成绩从高到低排名,并按名次输出每个学生的情况,包括:

           学号,各科成绩,平均成绩,总成绩,排名

       (4) 根据用于要求输出某门课程(由键盘输入课程号)成绩在90分(含90分)以上且总分在前5名的学生情况(请采用结构体数据类型,并采用模块化结构实现)





------------------Configuration: 成绩 - Win32 Debug--------------------
Compiling...
成绩.c
C:\Users\Administrator\Desktop\成绩.c(21) : warning C4244: '=' : conversion from 'double ' to 'float ', possible loss of data
C:\Users\Administrator\Desktop\成绩.c(26) : error C2143: syntax error : missing ';' before 'type'
执行 cl.exe 时出错.


成绩.obj - 1 error(s), 0 warning(s







做了一半,还有好几个错误,哎呀!!好瞌睡!



你可能感兴趣的:(结构体的应用)