首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。 请在程序的下画线处填入正确的内
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。 请在程序的下画线处填入正确的内
admin
2018-03-28
46
问题
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
注意:部分源程序给出如下。
不得增行或删行,也不得更改程序的结构!
试题程序:
#include<stdio.h>
#include<string.h>
#define N 8
typedef struct
{
char num[10];
int year,month,day;
}STU;
/*********found*********/
【1】
fun(STU*std,char*num)
{
int i;
STU a={"",9999,99,99};
for(i=0;i<N;i++)
/*********found*********/
if(strcmp(
【2】
,num)==0)
/*********found*********/
return(
【3】
);
return a;
}
main()
{
STU std[N]={{"111111",1984,2,15},{"222222",1983,9,21},{"333333",1984,9,1},
{"444444",1983,7,15},
{"555555”,1984,9,28},
{"666666",1983,11,15),
{"777777",1983,6,22),
{"888888",1984,8,19}};
STU p;
char n[10]="666666";
p=fun(stct,n);
if(p.rlLlm[0]_=0)
{
printf("\nNot found!\n");
}
else
{
print:f("\nSucceed!\n");
printf("%s%d一%d一%d\n",
p.num,p.year,p.month,p.day);
}
}
选项
答案
(1)STU (2)std[i].num (3)std[i]
解析
本题考查:if条件表达式;比较字符串函数strcmp;指针变量的使用;函数定义及函数返回值。
strcmp函数用来比较两个字符数组的大小,其格式为:strcmp(字符数组1,字符数组2)。若字符数组1>字符数组2,函数值大于0(正数);若字符数组1=字符数组2,函数值等于0;若字符数组1<字符数组2,函数值小于0(负数)。
填空1:根据函数fun的返回值类型可知,函数类型标识符应该是结构体类型的,所以填入STU。
填空2:根据题目说明,找出指定编号人员,并将其数据返回。通过strcmp函数比较编号,若相同则函数值为0,所以填入std
.num。
填空3:由题目可知,假如编号对应,则返回其编号对应数据,所以填入数据std
。
转载请注明原文地址:https://kaotiyun.com/show/Txxp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
下列程序中的函数stropy2()实现字符串两次复制,即将t所指字符串复制两次到s所指内存空间中,合并形成一个新字符串。例如,若t所指字符串为:efgh,调用strcpy2后,s所指字符串为:efghefgh。请填空。#include<stdi
有以下程序intf(intn){if(n==l)return1;elsereturnf(n-1)+1;}main(){inti,j=0;f
若要用函数fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件()。
下列程序的输出结果是______。main(){floatx=2.0,y;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;printf("%f\n",y);}
有下列程序段:intk=0,a=1,b=2,c=3;k=a<b?b:a;k=k>c?C:k;执行该程序段后,k的值是()。
—个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈则元素出栈的顺序______。
在软件工程中,白盒测试法可用于测试程序的内部结构,此方法将程序看做是()。
在进行模块测试时,要为每个被测试的模块另外设计两类模块:驱动模块和承接模块,其中______的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。
以下能正确定义二维数组的是______。
随机试题
Between1852,when【C1】________wasfirstestablishedthatMountEverestwasthehighestmountainonearth,and1953,whenEdmund
消毒,三指法提起输精管,连同阴囊皮肤一起用特制钳套住固定用特制钳将输精管剥离,暴露赤裸的输精管,将钳之一叶刺入输精管腔,游离1.5cm长之输精管
每摩尔葡萄糖在体内完全氧化时可释放的能量(以kJ计)是
回答有关3m直尺试验试验方法的测试的问题。3m直尺测定法有()。
国际工程投标报价时,下列施工现场办公费的处理方式,正确的是()。
公安工作涉及党的()等各方面政策。
根据下列文字资料回答下面问题:进入新世纪以后,云南省126个农业县市中仍有73个国家扶持工作重点县,占全国重点扶贫县市总数592个的12.33%。根据“五普”资料显示,73个贫困县总人口为2208.69万人,占全省总人口4236.01万人
如图所示,某metro风格的手机界面由A、B、C、D、E、F六个正方形色块组成,其中小的正方形A边长为1,则该手机屏幕的长宽比为:
如果以单链表表示集合,设集合A用单链表LA表示,集合B用单链表LB表示,设计算法求两个集合的差,即A一B。
ExpositionExpositioniswritingthatexplains.Mostofthebooksinuniversityli-brariesareexamplesofexposition.Alth
最新回复
(
0
)