首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。 函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。 请在程序的下画线处填入正确的
人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。 函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若指定编号不存在,返回数据中的编号为空串。 请在程序的下画线处填入正确的
admin
2017-09-23
19
问题
人员的记录由编号和出生年、月、日组成,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*hum)
{
int i;
STU a={"",9999,99,99};
for(i=0;i < N;i++)
/*********found*********/
if(strcrnp(
【2】
,hum)=0)
/*********found*********/
return(
【3】
);
retUrn a;
}
main()
{
STU std[N]={{"11 1111",1984,2,15},{"222222",1983,9,21),
{"333333",1984,9,1},
{"4 4 4 4 4 4",198 3,7,1 5},
{"5555 55”,198 4,9,2 8},
{"6 6 6 6 6 6",198 3,11,15},
{"7 7 7 7 7 7",1 98 3,6,22},
{"8 8 8 8 8 8",1984,8,19)};
STU P;
char r1[1 0]="66 6 6 6 6";
P=fun(std,n);
if(p.num[0]==0)
{
printf("\nNot found!\n");
}
plse
{
printf("\nSucceed!\n");
print;f("%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://jikaoti.com/ti/Sea0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若语句“t=fun(fun(x,y,A),(a+b,a+C),x+y+z);”对fun函数的调用正确,则fun函数的形参个数为()。
两次运行下面的程序,如果从键盘上分别输入3和2,则输出结果是()。#include<stdio.h>main(){intx;scanf("%d",&x);if(x++>2)printf("%d",x);
下面程序的输出结果是()。#include<stdio.h>main(){chara[]={’a’,’b’,’c’,’d’,’f’,’g’},*p;p=a;printf("%c\n",*p+4);}
下列数组定义中错误的是()。
定义如下变量和数组:inti,x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(i=0;i<3;i++)printf("%d",x[i][2-i]);
下列函数从字符数组s[]中删除和c一样的字符,请在下面横线处填空。voiddelete(s,C)chars[],c;{inti,j;for(i=j=0;();i++)if(s[i]!=’c’)s[j++]=
有以下程序:#include<stdio.h>intfun(intx,inty){if(x==y)return(x);elsereturn((x+y)/2);}main(){inta=1,b
以下程序段的输出结果是()。#include<stdio.h>main(){charp[][4]={"ABC","DEF","GHI"};inti;for(i=0;i<3;i++)puts(p[i
设有输入语句scanf("a=%d,b=%d,c=%d",&a,&b,&C),为使变量a的值为2,b的值为4,c的值为8,则从键盘输入数据的正确形式是()。
随机试题
常用的机床控制线路中,短路保护起什么作用?
可能发生抽样检验的第Ⅱ类错误的是()
芽孢呈椭圆形,粗于菌体,位于次极端,使细菌呈汤匙状或网球拍状的是
水浴振荡器最适合用于哪种培养
奶牛产后恶露排出时间异常的是
开标时,投标书(),招标人应在公正员监督下,当场宣布为废标。
张老师走进教室后,发现地上有一些碎纸片。“是哪个同学撕的废纸?”老师一问,同学们的目光不约而同地集中在陈伟的身上。“老师,是陈伟撕的。”“不是我!”教室里一下子热闹起来,你一言,我一语,吵得不可开交。张老师看在眼里,什么都明白了。这时张老师完全可以
若税收维持不变,仅仅增发债券为政府支出的增加而融资,那么结果可能是()。
下列叙述中正确的是()。
Psychologiststakecontrastiveviewsofhowexternalrewards,from【C1】________praisetocoldcash,affectmotivationandcreativ
最新回复
(
0
)