首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。 注意:请勿改动主函数main和其他函数中的任何内容
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。 注意:请勿改动主函数main和其他函数中的任何内容
admin
2018-09-10
38
问题
已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通过形参返回主函数(规定只有一个最高分)。已给出函数的首部,请完成该函数。
注意:请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:
#inelude<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>
#deftne N10
typedef struct ss/*定义结构体*/
{
char num[10];
int s;
}STU;
fun(STU a[],STU*s)
{
}
void main()
{
FILE*wf;
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;
system("CLS");
printf(*"*****The original data*****");
for(i=0;i<N;i++)
printf("No=%s Mark=%d\n",a
.num,
a
.s);
fu,n(a,&m);
printf("*****THE RESULT*****\n");
printf("The top:%s,%d\n",m.num,m.s);
/****************/
wf=fopen("out.dat","w");
fprintf(wf,"%s,%d",m.num,m.s);
fclose(wf);
/****************/
}
选项
答案
fun(STU a[],STU*s) { int i: *s=a[0]; for(i=0;i<N;i++)/*找出成绩最高的学生记录*/ if(s->s<a[i].s) *s=a[i]; }
解析
本题考查:成绩最高的学生记录查找;for循环语句;if条件语句。
本题的流程是先使s指向第1名学生,利用循环语句遍历所有学生的成绩,利用条件语句判断当前学生成绩是否最高,所以if语句的条件是s->s<a
.s。此外,做题时应该熟练掌握“指向运算符”和“成员运算符”的相关知识,题中“s->s”等价于“(*s).s”。
转载请注明原文地址:https://kaotiyun.com/show/cVxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includemain(){intarr[]={1,3,5,7,2,4,6,8},i,start;scanf(“%d”&start);for(i=0;i
若有程序片段: inta[12]={0},*p[3],**pp,i for(i=0;i<3;i++) p[i]=&a[i*4]; pp=p; 则对数组元素的错误引用是()
若调用一个函数,且此函数中没有return语句,则以下正确的说法是______。
有以下程序#defineP3voidF(intx){return(p’x’x);main(){pritnf("%d\n",F(3+5));}程序运行后的输出结果是
设函数fun的定义形式为:voldfun(charch,floatx){……}则以下对函数fun的调用语句中,正确的是()。
完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是()
以下定义的结构体类型拟包含两个成员,其中成员变量info用来存入整形数据;成员变量link是指向自身结构体的指针,请将定义补充完整。structnode{intinfo;【】link;};
下述函数统计一个字符串中的单词个数,单词是指处在空格之间的字符序列,请填空。intword(char*s){intnum=0,flag=0;while(*s){if(【】==’’)flag=0;
随机试题
A、快速耐受性B、戒断症状C、先天耐受性D、耐药性E、依赖性药物在短时间内反复应用数次即可使药效递减直至消失,而停药后机体对药物的敏感性可以恢复属于
男,20岁。神志不清2小时入院,既往患1型糖尿病5年,长期皮下注射胰岛素,近3天因腹泻停用。体检:BP70/50mmHg。皮肤中度失水征,呼吸深大,有烂苹果味,HR130次/分。最可能的诊断为()
A.明胶B.乙基纤维素C.磷脂D.聚乙二醇E.β-环糊精制备微囊常用的成囊材料是()。
A.聚乙二醇B.硫酸镁C.乳果糖D.比沙可啶E.甘油栓治疗功能性便秘可选用()。
下列各项中,属于会计工作的政府监督主体的有()。
导游人员所起的连接内外的纽带作用指的是导游人员()。
如果一个家长想用看电视作为强化物奖励儿童认真按时完成作业的行为,最合适的安排应该是()
A、4B、8C、16D、24D此题答案为D。第一个圆圈中的数字特征不甚明显,第二个圆圈中18均可被其余数字整除。考虑乘除规律得到18÷2=6÷2×3,代入第一个圆圈验证6÷1=2+1×3,则在第三个圆圈中,4÷4=8÷(24)×3。
设变量均已正确定义,若要通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c1和c2赋字符X和Y。以下所示的输入形式中正确的是(注:□代表空格字符)
Readtheintroductionbelowaboutacompanytrainingprogramme.ChoosethecorrectwordtofilleachgapfromA,BorC.Forea
最新回复
(
0
)