DOC

c++

By Frederick Olson,2014-04-26 12:41
7 views 0
c++

#include<stdio.h>

    struct student

    {

     char num[5];

     char name[15];

     float score[3];

    }stu[5];

    void main()

    {

     struct student z;

     int m,n;

     for(m=0;m<4;m++)

     { //保存学生的信息

     printf("请输入第%d个学生的信息:\n",m+1);

     printf("学号:");

     scanf("%s",&stu[m].num);

     printf("姓名:");

     scanf("%s",&stu[m].name);

     for(n=0;n<2;n++)

     {

     printf("%d科的成绩:",n+1);

     scanf("%f",&stu[m].score[n]);

     }

     stu[m].score[2]=stu[m].score[0]+stu[m].score[1];

     printf("\n");

     }

     printf("\n");

     printf("排序前的学生成绩:\n");

     printf("学号 姓名 成绩1 成绩2 成绩3\n");

     for (m=0;m<4;m++)

     {

     printf("%5s%8s",stu[m].num,stu[m].name);

     for(n=0;n<2;n++)

     {

     printf("%9.1f",stu[m].score[n]);

     }

     printf("%9.1f",stu[m].score[2]=stu[m].score[0]+stu[m].score[1]);

     printf("\n");

     }

     printf("\n");

    //排序

     for(m=0;m<4;m++)

     {

     for(n=0;n<2;n++)

     {

     if(stu[m].score[2]<stu[m+1].score[2])

     {

     z=stu[m];

     stu[m]=stu[m+1];

     stu[m+1]=z; continue;

     }

     }

     }

     printf("排序后的学生成绩:\n");

     printf("学号 姓名 成绩1 成绩2 总分\n");

     for (m=0;m<4;m++)

     {

     printf("%5s%8s",stu[m].num,stu[m].name);

     for(n=0;n<2;n++)

     {

     printf("%9.1f",stu[m].score[n]);

     }

     printf("%9.1f",stu[m].score[2]=stu[m].score[0]+stu[m].score[1]);

     printf("\n");

     }

     printf("\n");

    //插入学生信息

     printf("请插入一个学生信息:\n");

     printf("学号:");

     scanf("%s",&stu[m].num);

     printf("姓名:");

     scanf("%s",&stu[m].name);

     for(n=0;n<2;n++)

     {

     printf("%d科的成绩:",n);

     scanf("%f",&stu[m].score[n]);

     }

     printf("\n");

     for(m=0;m<4;m++)

     {

     for(n=0;n<2;n++)

     {

     if(stu[m].score[2]<stu[m+1].score[2])

     {

     z=stu[m];

     stu[m]=stu[m+1];

     stu[m+1]=z;

     }

     }

     }

     printf("插入一位学生成绩后为:\n");

     printf("学号 姓名 成绩1 成绩2 总分\n");

     for (m=0;m<5;m++)

     {

     printf("%5s%8s",stu[m].num,stu[m].name);

     for(n=0;n<3;n++)

     {

     printf("%9.1f",stu[m].score[n]);

     }

     printf("%9.1f",stu[m].score[0]+stu[m].score[1]);

     printf("\n");

     }

     printf("\n");

     }

Report this document

For any questions or suggestions please email
cust-service@docsford.com