首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:函数返回指定学号的学生数据,指定的序号在主函数中输入。若没找到指定的学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回(用于字符串比较的
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:函数返回指定学号的学生数据,指定的序号在主函数中输入。若没找到指定的学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回(用于字符串比较的
admin
2010-09-14
17
问题
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),它的功能是:函数返回指定学号的学生数据,指定的序号在主函数中输入。若没找到指定的学号,在结构体变量中给学号置空串,给成绩置-1,作为函数值返回(用于字符串比较的函数是strcmp)。
注意: 部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
#include<stdio. h>
#inctude<stdlib. h>
#define N 16
typedef struct
{ char num[10];
int s;
} STREC;
STREC fun(STREC *a, char *b)
{
}
main ( )
{
STREC s [N]={ { "GA005", 85}, {"GA003", 76},
{ "GA002", 69 }, { "GA004", 85 }, { "GA001", 91 },
{ "GA007", 72 }, { "GA008", 64 }, { "GA006", 87 },
{ "GA015", 85 }, { "GA013", 91 }, { "GA012", 64 },
{ "GA014", 91 }, { "GA011", 77 }, { "GA017", 64 },
{ "GA018", 64 }, { "GA016", 72 } };
STREC h;
char re[10];
int i, n;
FILE *out;
printf ("The original data: \n");
for (i=0; i<N; i++)
{ if (i%4==0)
printf ("In");
/*每行输出4个学生记录*/
printf("%s %3d" ,s
num, s
s);
}
printf("\n\nEnter the number: ");
gets (m);
h=fun (s,m);
printf ("The data: ");
printf("\n%s %4d\n",h.num, h.s);
printf ("\n");
out=fopen ("out80. dat", "w");
h=fun (s, "GA013");
fprintf(out, "%s %4d\n",h.num, h.s);
fclose (out);
}
选项
答案
STREC fun(STREC *a, char *b) { int i; STREC str={"\0",-1}; /*若没找到掼定的学号,在结构体变量中给学号置空串,给成绩置-1*/ for (i=0; i<N; i++) if (strcmp (a [ i] .num, b)==0) /*找到指定学号的学生数据*/ str=a [i]; return str; /*返回学生记录* / }
解析
本程序一开始先使结构体变量str的学号为空串,成绩为-1。题中循环体的功能是搜索所有学生的学号并判断是否有学号与b所指字符串相同的(即找到),若找到则给str重新赋值(str=a
),若没找到则str成员的值还是原有值(即未找到时学号返回空串,成绩返回-1)。
题中已经给出字符串的比较只能用strcmp()函数,而不能直接进行比较,我们在改错题分析中已经详细讲述了字符串操作函数,如strcmp(),strcat(),strcpy()和strlen()等,希望学习者能熟练掌握。
转载请注明原文地址:https://kaotiyun.com/show/RWID777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列说法错误的是()。
下列有关利率的说法,错误的是()。
在当事人没有约定、法律亦无特别规定的情况下,买卖合同中的财产所有权的转移时间是()。
金融市场最基本的功能是()。
假定其他条件不变,下列因素中不会导致货币升值的是()。
推进物联网的应用和发展,对于提高国民经济和社会生活信息化水平,提升社会管理和公共服务水平。带动相关学科发展和技术创新能力增强,推动产业结构调整和发展方式转变具有重要意义,为此我国制定了推进物联网有序健康发展的基本原则。下列不属于此原则的是()。
华氏度和摄氏度均是测量温度的单位,摄氏度规定水的冰点温度为0度,沸水温度为100度:华氏度规定水的冰点为32度,沸点为212度。某时刻华氏度比摄氏度数值上高60度,则该时刻为:
如图所示,X、Y、Z分别是面积为64、180、160的三张不同形状的纸片。它们部分重叠放在一起盖在桌面上,总共盖住的面积为290。且X与Y、Y与Z、Z与X重叠部分面积分别为24、70、36。问阴影部分的面积是多少?
某专业有学生50人,现开设有A、B、C三门选修课。有40人选修A课程,36人选修B课程,30人选修C课程,兼选A、B两门课程的有28人,兼选A、C两门课程的有26人,兼选B、C两门课程的有24人,A、B、C三门课程均选的有20人,那么,三门课程均未选的有(
①在无意义面前,大脑由于寻找不到答案而引发焦虑,当然这是积累到固定阈值之后的事情②权利是伴随选择而产生的,譬如电视机的频道转换器就给了观众看与不看的权利③人的大脑有一种无法改变的功能,即不断地追索词语以及所有事情的意义④如果在
随机试题
在食补养生膳的制作中,五味调和不当可通过人体自身调节,而不会引起疾病的发生。()
已知某酶分子由多亚基组成,测定其酶反应动力学不符合米一曼方程,而是呈“S”曲线。此酶应属于一种
医疗机构配制的制剂不得
当某责任护士得知自己所护理的患者是一位退休老师时,由于从小对老师就很尊敬、很喜欢老师,便根据自己对老师的了解和交往经验,以热情亲切的态度和方式与患者进行沟通,并得到较好的效果。此护士较好地运用了认知效应中的
建设项目组织设计的内容不包括()。
当网络计划的计划工期等于计算工期时,()的工作就是关键工作,由关键工作组成的线路就是关键线路。
现场控制器与各类监控点的连接,模拟信号应采用()。
A工业企业本期主营业务收入为300万元,主营业务成本为200万元,其他业务收入为150万元,其他业务成本为130万元,管理费用为115万元,投资收益为180万元,所得税为130万元。假定不考虑其他因素,该企业本期营业利润为()万元。
某项经济业务发生后,一个负债账户记贷方,则有可能是()。
构筑健全的性心理,实现和谐的性生活,它必然涉及()。
最新回复
(
0
)