首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。 注意:部分源程序在文件PROG1.C中
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。 注意:部分源程序在文件PROG1.C中
admin
2018-09-27
43
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把分数最高的学生数据放在h所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
1 #include<stdio.h>
2 #define N 16
3 typedef atruct
4 { char num[10];
5 int s;
6 } STREC;
7 int fun(STREC *a,STREC *b]
8 {
9
10 }
11 main()
12 {STREC s[N]=({’’GA05’’,85},{’’GA03¨,76},{’’GA02’’,69},{’’GA04’’,85},{.tGAOl”,91},{’’GA07’’,72},{’’GA08’’,64},{’’GA06”,87},{’’GAOl5’’,85},{’’GAOl3’’,91},{’’GA012’’,64),{”GAOl4”,91),{’’GA011’’,77},{’’GAOl7’’,64),{’’GA018’’,64},{’’GA016’’,72}};
13 STREC h[N];
14 int i,n;FTLE *out;
15 n=fun(s,h);
16 printf(’’The%d highest score:\n’’,n);
17 for(i=0;i<n; i++)
18 printf(’’%s %4d\n’’,h
.num,h
.s);
19 printf(’’\n’’);
20 out=fopen(’’out.clat’’,’’w’’);
21 fprintf(out,’’%d\n’’,n);
22 for(i=0;i<n;i++)
23 fprintf(out,’’%4d\n’’,h
.s);
24 fclose(out);
25 }
选项
答案
1 int i,max=a[0].s,n=0; 2 for(i=1;i<N; i++) 3 if(max<a[i].s)max=a[i].s;/*找出最高成绩*/ 4 for(i=0;i<N;i++) 5 if(max==a[i].s)b[n++]=a[i];/*找相等的最高成绩并存入数组b中*/ 6 return n; /*返回符合条件的人数*/
解析
程序功能是把分数最高的学生数据放在h所指的数组中。
(1)要把最高分数的学生数据放在数组中,首先求出最高分数,再使用一个for循环把所有的成绩进行比较,找出最高的分数来。
(2)找出所有与最高分数相等的学生,并将最高分数的人数累加。
转载请注明原文地址:https://kaotiyun.com/show/aAxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下述函数统计一个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。intword(char*s){intnum=0,flag=0;while(*s){if(【】==’’)flag=0;
有以下程序:#include<string.h>structSTU{charname[10];intnum;};voidf(char*name,intnum){structSTU
以下程序运行后的输出结果是______。main(){intx=0210;printf("%x\n",x);}
有如下程序:#defineN2#defineMN+1#defineNUM2*M+1#main(){inti;for(i=1;i<=NUM;i++)
概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()。
数据的存储结构是指
以下程序的输出结果是_______。main(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7});Print("%d%d%d%d\n",a[0][3],a[l][2],a[2][1],
下列程序的运行结果是()。main(){intx=1,y=3,a=0;while(x++!=(y-=1)){a+=1;if(y<x)break;}printf("%d,%d
已知a所指的数组中有N个元素。。函数fun的功能是,将下标k(k>0)开始的后续元素全部向前移动一个位置填空。voidfun(inta[N],intk){inti:for(i=k;i
下述函数统计一个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。intword(char*s){intnum=0,flag=0;while(*s){if(【】==’’)flag=0;
随机试题
奥美拉唑:雷尼替丁:
下列关于补液原则的叙述,错误的是
女,26岁,停经45天,突感下腹坠痛及肛门坠胀感,少量阴道流血及头晕、呕吐半天。体格检查:面色苍白,BP80/40mmHg,腹肌略紧张,下腹压痛。妇科检查:阴道少量血性分泌物,宫颈举痛(+),后穹窿饱满,子宫稍大,附件区触诊不满意。首选检查项目应是
当单个桥梁存在不同的结构形式时,应将不同的结构形式划分为多个评定单元,分别对各评定单元进行技术状况等级评定。()
下面哪个路基施工项目不能在冬季进行施工()。
L所违反的税务管理制度有( )。Z的应处罚行为包括( )。
下列选项中,不属于民族区域自治地方自治机关的是()。
甘蔗:红糖
Insuranceisthesharingof【C1】________Nearlyeveryoneisexposed【C2】________riskofsomesort.Thehouseowner,forexample,kn
InAmerica,olderpeoplerarelylivewiththeiradultchildren.Butinmanyothercultureschildrenareexpectedtocare【C1】____
最新回复
(
0
)