码迷,mamicode.com
首页 > 其他好文 > 详细

谭浩强C程序设计(第四版)例题中的代码优化

时间:2015-01-20 23:54:20      阅读:316      评论:0      收藏:0      [点我收藏+]

标签:

eg:9.7 有n个结构体变量,内含学生学号,姓名和3门课成绩,要求输出平均成绩最高的学生的信息(内含学生学号,姓名和3门课成绩和平均成绩)。

2015-01-2022:25:34

 1 #include<stdio.h>
 2 #define N 2
 3 
 4 struct Student
 5 {
 6     int num;
 7     char name[20];
 8     float score[3];
 9     float aver;
10 };
11 
12 void input(struct Student *stu)
13 {
14     int i;
15     printf("input the student‘s information:\nname,num,three score\n");
16     for(i=0;i<N;i++,stu++)
17     {
18         scanf("%s %d %f %f %f",stu->name,&stu->num ,
19             &stu->score[0],&stu->score[1],&stu->score[2]);
20         stu->aver=(stu->score[0]+stu->score[1]+stu->score[2])/3;
21     }
22 }
23 
24 struct Student *Max(struct Student *stu)
25 {
26     int i;
27     int m=0;
28     for(i=0;i<N;i++)
29     {
30         if(stu[i].aver>stu[m].aver)
31         {
32             m=i;
33         }
34     }
35     return &stu[m];
36 }
37 
38 void print_stu(struct Student *stud)
39 {
40     printf("\nThe average scores of the top students is:\n");
41     printf("num:%d\nname:%s\nthe three subject:%5.1f,%5.1f,%5.1f\nthe aver score:%6.2f\n",stud->num,stud->name,stud->score[0],stud->score[1],stud->score[2],stud->aver);    
42 }
43 
44 int main()
45 {
46     struct Student stu[N];
47     struct Student *p = stu;
48     input(p);
49     print_stu(Max(p));
50     return 0;
51 }

 

谭浩强C程序设计(第四版)例题中的代码优化

标签:

原文地址:http://www.cnblogs.com/wumo66/p/4237609.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!