一个小小的结构体(作业)

#include<stdio.h>
int main(){
struct student{
int num;
int sch;
};
struct student temp;//定义结构体 
student s[32]={{392,81},{343,94},{948,90},{237,84},{240,85},{202,73},{298,91},{459,37},{304,80},{403,85},{314,66},{322,30},{460,80},{465,48},{361,40},{377,92},{442,85},{446,92},{983,62},{469,74},{472,32},{479,85},{493,77},{497,76},{517,90},{506,78},{534,67},{539,92},{522,74},{826,75},{530,31},{482,76}};
int i,j,index,z,x=0,c=0,v=0,b=0,q=0,w=0,av=0;
for(i=0;i<32-1;i++){//排序 
index=i;
for(j=i+1;j<32;j++)
if(s[j].sch>s[index].sch)
index = j;
temp=s[index];
s[index]=s[i];
s[i]=temp;
}
for(z=0;z<32;z++){ //输出 
if(s[z].sch>=90&&s[z].sch<=100)
x++;}
printf("90-100分人数为%d\n",x);
for(z=0;z<32;z++){
if(s[z].sch>=90&&s[z].sch<=100)
printf("%d %d\n",s[z].num,s[z].sch);}
for(z=0;z<32;z++){
if(s[z].sch>=80&&s[z].sch<=89)
c++;}
printf("80-89分人数为%d\n",c);
for(z=0;z<32;z++){
if(s[z].sch>=80&&s[z].sch<=89)
printf("%d %d\n",s[z].num,s[z].sch);}
for(z=0;z<32;z++){
if(s[z].sch>=70&&s[z].sch<=79)
v++;}
printf("70-79分人数为%d\n",v);
for(z=0;z<32;z++){
if(s[z].sch>=70&&s[z].sch<=79)
printf("%d %d\n",s[z].num,s[z].sch);}
for(z=0;z<32;z++){
if(s[z].sch>=60&&s[z].sch<=69)
b++;}
printf("60-69分人数为%d\n",b);
for(z=0;z<32;z++){
if(s[z].sch>=60&&s[z].sch<=69)
printf("%d %d\n",s[z].num,s[z].sch);}
for(z=0;z<32;z++){
if(s[z].sch<60)
q++;}
printf("不及格人数为%d\n",q);
for(z=0;z<32;z++){
if(s[z].sch<60)
printf("%d %d\n",s[z].num,s[z].sch);}


for(z=0;z<32;z++){
w+=s[z].sch;
}av=w/32;
printf("平均成绩:%d\n",av);
printf("排序\n");
for(i=0;i<32;i++)
{printf("%d %d\n",s[i].num,s[i].sch);
}
for(i=0;i<3;i++)
{
printf("全班第%d名%d %d\n",i,s[i].num,s[i].sch);
}
for(i=31;i>28;i--)
{
printf("全班第%d名%d %d\n",i,s[i].num,s[i].sch);
}

    } 
 

猜你喜欢

转载自blog.csdn.net/yizhixiaoma/article/details/80396139