【计算机类职业资格】国家二级C语言(结构体和共用体、文件)机试模拟试卷1及答案解析.doc
《【计算机类职业资格】国家二级C语言(结构体和共用体、文件)机试模拟试卷1及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级C语言(结构体和共用体、文件)机试模拟试卷1及答案解析.doc(9页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言(结构体和共用体、文件)机试模拟试卷 1及答案解析(总分:54.00,做题时间:90 分钟)一、选择题(总题数:27,分数:54.00)1.若有语句 typedef struet Sint g;char h;T;,则下列叙述中正确的是( )。(分数:2.00)A.可用 S定义结构体变量B.可用 T定义结构体变量C.S是 struct类型的变量D.T是 struet S类型的变量2.设有语句 typedef struet Trchar c;int a4;CIN;,则下列叙述中正确的是( )。(分数:2.00)A.CIN是 struct TT类型的变量B.TT是 struct类型的
2、变量C.可以用 TT定义结构体变量D.可以用 CIN定义结构体变量3.下列叙述中错误的是( )。(分数:2.00)A.可以用 typedef将已存在的类型用一个新的名字来代表B.可以通过 typedef增加新的类型C.用 typedef定义新的类型名后,原有类型名仍有效D.用 typedef可以为各种类型起别名,但不能为变量起别名4.有以下程序: #include main() struet STU char name9; char sex: double score2; ;struct STU a=“Zhao”,m,850,900,b=“Qian“,f,950,920; b=a: prinf
3、f(“s,c,20f,20fn”,bname,bsex,bscore0,b8core1); 程序的运行结果是( )。(分数:2.00)A.Qian,m,85,90B.Zhao,m,85,90C.Zhao,f,95,92D.Qian,f,95,925.下列结构体类型说明和变量定义中正确的是( )。(分数:2.00)A.struct REC; int n;char C; REC t1,t2;B.typedef struct int n;char c;REC; REC t1,t2;C.typedef struct REC; int n=0;char c=A;t1,12;D.struct int n;
4、char c:REC; REC t1,t2;6.下列结构体的定义语句中错误的是( )。(分数:2.00)A.stmct ordint x;int y;int z;struct ord a;B.struct ordint x;int y;int z;struct ord a;C.struct ordint x;int y;int z;a;D.structint x;int y;int z;a;7.设有定义: struct complex int real,unreal; datal=1,8,data2;则下列赋值语句中错误的是( )。(分数:2.00)A.data2=(2,6);B.data2=
5、datal;C.data2real=datalreal;D.data2real=datalunreal;8.有以下程序: #include int a; char b10; double c; ; stmct A f(stmct A t); main() stmct A a=1001,“ZhangDa”,10980; a=f(a); prinff(“d,s,61fn”,aa,ab,ae); struct A f(stmct A t) ta=1002; strcpy(tb,“ChangRong”); tc=12020;return t; 程序的运行结果是( )。(分数:2.00)A.1002,Z
6、hangDa,12020B.1002,ChangRong,12020C.1001,ChangRong,10980D.1001,ZhangDa,109809.有以下程序: struct stint x;int*y;*pt; int a=1,2,b=3,4; struct st e12=10,a,20,b;以下选项中表达式值为 11的是( )。(分数:2.00)A.+ptxB.pt一xC.*pt一yD.(pt+)一x10.有以下定义和语句: int Rum; char name20;char c; struct int day; int month; int year; s; ; stmct wo
7、rkers w,*pw; pw=&w:能给 w中 year成员赋 1980的语句是( )。(分数:2.00)A.pw一year=1980;B.wyear=1980;C.wsyear=1980;D.*pwyear=1980;11.有以下程序: #include struct ttint x;struct *y;*P; struct tt a4=20,a+1,15,a+2,30,a+3,17,a; main() int i; p=a: for(i=1;ix); P=P 一y: 程序的运行结果是( )。(分数:2.00)A.20,30,B.30,17C.15,30,D.20,15,12.设有定义:s
8、tructchar mark12;int numl;double num2;t1,t2;,若变量均已正确赋初值,则下列语句中错误的是( )。(分数:2.00)A.t1=t2;B.t2numl=t1,num1;C.t2mark=t1mark;D.t2num2=t1hum2;13.有以下程序: #include struct S int a,b; data2=10,100,20,200; main() struct S P=data1; prinff(“dn”,+(Pa); 程序的运行结果是( )。(分数:2.00)A.10B.11C.20D.2114.有以下结构体说明、变量定义和赋值语句:str
9、uct STDchar name10;int age;char sex;$5,*ps;ps=&s0;则下列 scanf函数调用语句有错误的是( )。(分数:2.00)A.scanf(“s”,s0name);B.scant(“d”,&s0age);C.scanf(“c”,&(ps 一sex);D.scanf(“d”,ps 一age);15.有以下程序:#includestdiohtypedef structint b,P;A;void f(AC)*注意:c 是结构变量名* int j; cb+=1; cP+=2:main() int i; A a=1,2; f(a); prinff(“d,dn”
10、,ab,aP);程序的运行结果是( )。(分数:2.00)A.2,4B.1,2C.1,4D.2,316.有以下程序: #include struet S int n;int a20; void f(8truer S*p) int i,j,t; fbr(i=0;in 一 1;i+) flor(j=i+1;jn;j+) if(P 一aiP 一aj) t=P 一ai; P 一ai=P一aj; P 一aj=t; main() int i; struet S s=10,2,3,1,6,8,7,5,4,10,9;f(&s); for(i=0;iA.2,3,1,6,8,7,5,4,10,9,B.10,9,8
11、,7,6,5,4,3,2,1,C.1,2,3,4,5,6,7,8,9,10,D.10,9,8,7,6,1,2,3,4,5,17.程序中已构成如下不带头节点的单向链表结构,指针变量 s、P、q 均已正确定义,并用于指向链表节点,指针变量 s总是作为指针指向链表的第一个节点。 (分数:2.00)A.删除尾节点B.尾节点成为首节点C.删除首节点D.首节点成为尾节点18.假定已建立以下链表结构,且指针 P和 q已指向如图所示的节点。 (分数:2.00)A.P一next=q 一next;free(q);B.p=q一next;free(q);C.P=q;free(q);D.(*P)next=(*q)nex
12、t;free(P);19.下列关于 C语言文件的叙述中正确的是( )。(分数:2.00)A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件D.文件由字符序列组成,其类型只能是文本文件20.下列关于 C语言文件的叙述中正确的是( )。(分数:2.00)A.当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失B.打开一个已存在的文件并进行写操作后,原有文件中的全部数据必定被覆盖C.在一个程序中对文件进行写操作后,必须先关闭该文件然后再打开才能读到第一个数据D.C语言中的文件是流式
13、文件,因此只能顺序存取数据21.有以下程序: #include main() FILE*fp;int a10=1,2,3,i,n; fp=fopen(“d1dat”,”W”); for(i=0;iA.321B.12300C.1D.12322.设文件指针 fp已定义,执行语句 fp=fopen(“file”,“W”);后,下列针对文本文件 file操作叙述的选项中正确的是( )。(分数:2.00)A.只能写不能读B.写操作结束后可以从头开始读C.可以在原有内容后追加写D.可以随意读和写23.有以下程序: #include main() FILE*f: f=fopen(“fileatxt”,“w”
14、); fprinff(f,“abc”); fclose(f); 若文本文件 fileatxt 中原有内容为 hello,则运行以上程序后,文件 filea,txt 中的内容为( )。(分数:2.00)A.abcloB.abcC.helloabcD.anchelle24.读取二进制文件的函数调用形式为:fread(buffer,size,count,fp);,其中 buffer代表的是( )。(分数:2.00)A.一个内存块的字节数B.一个整型变量,代表待读取的数据的字节数C.一个文件指针,指向待读取的文件D.一个内存块的首地址,代表读人数据存放的地址25.有以下程序: #includestdi
15、oh main() FILE* pf; char*s1=“China”,*s2=“Beijing”;pf=fopen(“abedat”,“wb+”); fwrite(s2,7,1,pf); rewind(pf);*文件位置指针回到文件开头* fwrite(s1,5,1,pf); fclose(pf); 程序执行后,abedat 文件的内容是( )。(分数:2.00)A.ChinaB.ChinangC.ChinaBeijingD.BeijingChina26.有以下程序: #include main() FILE* fp;char str10; fp=fopen(”myfiledat”,“w”)
16、;fputs(“abe”,fp); fclose(fp); fp=fopen(“myfiledat”,“a+”); fprintf(fp,“d”,28); rewind(fp); fscanf(fp,“s”,str); puts(str); fclose(fp); 程序的运行结果是( )。(分数:2.00)A.abeB.28cC.abc28D.因类型不一致而出错27.设 fp为指向某二进制文件的指针,且已读到此文件末尾,则函数 feof(fp)的返回值为( )。(分数:2.00)A.0B.0C.非 0值D.NULL国家二级 C语言(结构体和共用体、文件)机试模拟试卷 1答案解析(总分:54.0
17、0,做题时间:90 分钟)一、选择题(总题数:27,分数:54.00)1.若有语句 typedef struet Sint g;char h;T;,则下列叙述中正确的是( )。(分数:2.00)A.可用 S定义结构体变量B.可用 T定义结构体变量 C.S是 struct类型的变量D.T是 struet S类型的变量解析:解析:本题考查 typedef重新声明一种结构体类型。那么 T为结构体类型,而不是结构体变量,所以 B选项正确。2.设有语句 typedef struet Trchar c;int a4;CIN;,则下列叙述中正确的是( )。(分数:2.00)A.CIN是 struct TT类
18、型的变量B.TT是 struct类型的变量C.可以用 TT定义结构体变量D.可以用 CIN定义结构体变量 解析:解析:本题考查 typedef重新声明一种结构体类型。其中 CIN为结构体类型名,而不是结构体变量,所以 D选项正确。3.下列叙述中错误的是( )。(分数:2.00)A.可以用 typedef将已存在的类型用一个新的名字来代表B.可以通过 typedef增加新的类型 C.用 typedef定义新的类型名后,原有类型名仍有效D.用 typedef可以为各种类型起别名,但不能为变量起别名解析:解析:本题考查 typedef的用法。typedef 并不是增加一种新的类型,而是对已存在的类型
19、用一个新的名字来代表,所以 B选项错误。4.有以下程序: #include main() struet STU char name9; char sex: double score2; ;struct STU a=“Zhao”,m,850,900,b=“Qian“,f,950,920; b=a: prinff(“s,c,20f,20fn”,bname,bsex,bscore0,b8core1); 程序的运行结果是( )。(分数:2.00)A.Qian,m,85,90B.Zhao,m,85,90 C.Zhao,f,95,92D.Qian,f,95,92解析:解析:本题考查结构体初始化操作。本题中
20、可以直接将结构体 a赋值给 b,所以输出的结果和 a一样,B 选项正确。5.下列结构体类型说明和变量定义中正确的是( )。(分数:2.00)A.struct REC; int n;char C; REC t1,t2;B.typedef struct int n;char c;REC; REC t1,t2; C.typedef struct REC; int n=0;char c=A;t1,12;D.struct int n;char c:REC; REC t1,t2;解析:解析:本题考查结构体的相关知识。选项 A中 struct REC后面不能有分号,C 选项中 typedef struct
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 语言 结构 共用 文件 模拟 试卷 答案 解析 DOC
