结构体练习-1

一个简单的问题,由于读题时不在意导致我交了那么多次,值得反思。。。。

http://acm.nefu.edu.cn/JudgeOnline/problemShow.php?problem_id=1045

 1 #include <iostream>
 2 #include <cstdlib>
 3 #include <cstdio>
 4 #include <algorithm>
 5 using namespace std;
 6 struct sa
 7 {
 8     int no;
 9     char xg[25];
10     char name[25];
11     char  sex;
12     double  chi,eng,mah,sot,ave;
13 }data[1005];
14 int  cmp(const sa &a,const sa &b)//注意此处是const
15 {
16     return a.sot>b.sot;
17 }
18 int sum(int i)
19 {
20     data[i].sot=data[i].chi+data[i].eng+data[i].mah;
21     data[i].ave=data[i].sot/3.0;
22     return 0;
23 }
24 int main()
25 {
26    int n;
27    while(cin>>n)
28    {
29        for(int i=0;i<n;i++)
30        {
31            cin>>data[i].no>>data[i].xg>>data[i].name>>data[i].sex>>data[i].chi>>data[i].eng>>data[i].mah;
32            sum(i);
33        }
34        sort(data,data+n,cmp);
35        for(int i=0;i<n;i++)
36        printf("%d  %s %s  %c  %.2lf  %.2lf  %.2lf  %.2lf  %.2lf\n",data[i].no,data[i].xg,data[i].name,data[i].sex,data[i].chi,data[i].eng,data[i].mah,data[i].ave,data[i].sot);
37    }
38     return 0;
39 }
View Code

 

posted @ 2016-05-24 14:25  Wally的博客  阅读(145)  评论(0编辑  收藏  举报