首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。 注意:部分源程序存在文件PROGl.C中。 请勿
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。 注意:部分源程序存在文件PROGl.C中。 请勿
admin
2019-09-02
35
问题
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入结构体数组a中。请编写函数fun,函数的功能是:找出成绩最高的学生记录,通过形参指针传回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。
注意:部分源程序存在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
#include<stdio.h>
#include<string.h>
#defiFie N 10
typedef struer ss
{ char num[10];int s;}STU;
fun(STU a[],STU*s)
{
}
main()
{STU a[N]={{"A01",81},{"A02",89},{"A03",66},{"A04",87},{"A05",77},{"A06",90},{"A07",79},{"A08",61},{"A09",80},{"A10",71}},m;
int i;
printf("*****The originaldata *****\n"),
for(i=0; i<N;i++)printf("No=%s Mark=%d\n",a
.num,a
.s);
fun(a,&m);
printf ("*****THE RESULT*****\n");
printf("The top:%s,%d\n",m.num,m.s);
NONO();
}
NONO()
{/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
FILE*rf,*wf;
STU a[N],m;
int i;
rf=fopen("in.dat","r");
wf=fopen("out.dat","w");
for(i =0 ; i < 10; i++)fscarlf(rf, "%s %d", a
.mum,&a
.s);
fun(a,&m);
fprintf(wf,"The top :%s,%d\n", m.num, m.s);
fclose(rf);
fclose(wf);
}
选项
答案
int i,max=a[0].s,j=0; for(i=1;i<N;i++) if(max<a[i].s){ j=i; max=a[i].s;} *s=a[j];
解析
该程序功能是求最高分数的学生。本题是关于求解结构体中某些成员的最大值,首先将第一个值设定为最大值,并在循环中将其他所有值与该值进行比较,求得最大值。然后将最大值与所有值进行比较,求得所有的最大值。
转载请注明原文地址:https://kaotiyun.com/show/GORp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中。函数fun的功能是:找出指定出生年份的人员,将其数据放在形参k所指的数组中,由主函数输出,同时由函数值返回满足指定条件的人数。请在程序的下划线处填入正确的内容
给定程序MODI1.C中函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码为偶数的字符放入t所指数组中(规定第一个字符放在第0位中)。例如,字符串中的数据为:AABBCCDDEEFF,则输出应当是:ABBCDDEFF。
函数fun的功能是:计算直到=le-6);returnf;}main(){doublex,y;x=2.5;y=fun(x);printf("inTheresultis:in"
以下选项中不合法的标识符是
以下选项中,不能作为合法常量的是
有以下程序charfun(char*c){if(*c<=’z’&&*c>=’A’)*c-=’A’-’a’;return*c;}main(){chars[81],*p=s;gets(S);while(*P){*P=fun(P
有下列程序:voidf(int*q){inti=0;for(;i<5;i++)(*q)++;}main(){inta[5]={1,2,3,4,5},i;f(a);for(i=0;i
有以下程序#includemain(){inta=1,b=0;printf("%d,",b=a+B)printf("%d\n",a=2*B)}程序运行后的输出结果是
有两个关系R和S如下:由关系R通过运算得到关系S,则所使用的运算为
随机试题
Listeningisanextremelycomplexcommunicativeactivity.Inordertohaveabetterunderstanding,toanticipatewhatiscoming
甲属于先富起来的人,热心组织他人探险旅游,但从不收取组织费用,伙伴费用实行AA制。在一次探险过程中,其伙伴乙遇害身亡,对此乙的家属要求甲承担相应的赔偿责任。下列表述正确的是:()
下列关于建筑与等高线之间的关系表述错误的是()。
面对个别游客恶意攻击和诬蔑我国的言论,导游应该()。
关于职业化管理,正确的说法是()。
为了保证考评的公正和公平性,人力资源部门应当建立()保障系统。
学习困难综合征的表现不包括()。
当地公安机关对异地公安机关提出协助调查、执行强制措施等协作请求,只要法律手续完备,协作地公安机关就应当及时无条件予以配合。()
办公室工作的性质决定了办公室工作具有()。
A:Goodmorning.MissGreen.【5】B:Yes.itis.A:Well.【6】B:Haveyougotanybrownsugar(红塘)?A:【7】I’veonly
最新回复
(
0
)