[计算机类试卷]国家二级C语言(结构体、共用体、位运算及文件操作)机试模拟试卷7及答案与解析.doc
《[计算机类试卷]国家二级C语言(结构体、共用体、位运算及文件操作)机试模拟试卷7及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言(结构体、共用体、位运算及文件操作)机试模拟试卷7及答案与解析.doc(19页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言(结构体、共用体、位运算及文件操作)机试模拟试卷 7及答案与解析 一、选择题 1 以下叙述中错误的是 ( A)可以用 typedef将已存在的类型用一个新的名字来代表 ( B)可以通过 typedef增加新的类型 ( C)用 typedef定义新的类型名后,原有类型名仍有效 ( D)用 typedef可以为各种类型起别名,但不能为变量起别名 2 以下关于 typedef的叙述错误的是 ( A) typedef只是将已存在的类型用一个新的名字来代表 ( B)用 typedef可以为各种类型说明一个新名 ,但不能用来为变量说明一个新名 ( C)用 typedef可以增加新类型 (
2、D)用 typedef为类型说明一个新名,通常可以增加程序的可读性 3 以下结构体类型说明和变量定义中正确的是 ( A) typedef structint n; char c; REC; REC t1, t2; ( B) struct REC; int n; char c; ; REC t1, t2; ( C) typedef struct REC; int n=0; char c=A; t1, t2; ( D) structint n; char c; REC; REC t1, t2; 4 以下叙述中错误的是 ( A)可以用 typedef将已存在的类型用一个新的名字来代表 ( B)可以通
3、过 typedef增加新的类型 ( C)用 typedef定义新的类型名后,原有类型名仍有效 ( D)用 typedef可以为各种类型起别名,但不能为变量起别名 5 若有定义 typedefint*T; T a10;则 a的定义与下面哪个语句等价 ( A) int*a10; ( B) int(*a)10; ( C) int*a; ( D) int a10; 6 若有定义 typedefchar T10; T*a;上述定义中 a的类型与下面选项中完全相同的是 ( A) char(*a)10; ( B) char*a; ( C) char a10; ( D) char*a10; 7 以下结构体说明
4、和变量定义中,正确的是 ( A) typedefstruct abcint n; double m; )ABC; ABC x, y; ( B) struct abcint n; double m; struct abc x, y; ( C) struct ABCint n; double m; struct ABC x, y; ( D) struct abcint n; double m; ; abc x, y; 8 以下叙述中正确的是 ( A)使用 typedef说明新类型名时,其格式是: typedef新类型名原类型名; ( B)使用 typedef说明新类型名时,后面不能加分号 ( C)
5、在程序中,允许用 typedef来说明一种新的类型名 ( D)在使用 typedef改变原类型的名称后,只能使用新的类型名 9 以下叙述中错误的是 ( A) typedef的作用是用一个新的标识符来代表已 存在的类型名 ( B) typedef说明的新类型名必须使用大写字母,否则会出编译错误 ( C)可以用 typedef说明的新类型名来定义变量 ( D)用 typedef可以说明一种新的类型名 10 下面结构体的定义语句中,错误的是 ( A) struct ordint x; int y; int z; ; struct ord a; ( B) struct ordint x; int y;
6、 int z; struct ord a; ( C) struct ordint x; int y; int z; a; ( D) structint x; int y; int z; a; 11 有以下程序 #include typedef structint b, p; )A; void f(A c) *注意: c是结构变量名 * int j; c b+=1; c p+=2; main() i; A a=1, 2; f(a); printf(“ d, d n“, a b, a p); 程序运行后的输出结果是 ( A) 2 4 ( B) 1, 2 ( C) 1, 4 ( D) 2, 3 12
7、 有以下程序 struct sint a, b; ) data2=10, 100, 20, 200); main() struct s p=data1; printf(“ d n“, +(p a) ); 程序运行后的输出结果是 ( A) 11 ( B) 20 ( C) 21 ( D) 10 13 设有定义: struct complexint real, unreal; datal=1, 8), data2; 则以下赋值语句中错误的是 ( A) data2=(2, 6); ( B) data2=datal: ( C) data2 real=datal real; ( D) data2 real
8、=datal unreal; 14 有以下程序 struct sint n; int a20; ; voidf(struct s *p) int i, j, t ; for(i=0; in-1; i+) for(j=i+1; jn; j+) if(p-aip-aj)t=p-ai; p-ai=p-aj; p-aj=t; main() int i; struct S s=10, 2, 3, 1, 6, 8, 7, 5, 4, 10, 9; f(&s); for(i=0; i #include typedef structchar name9; char sex; int score2; )STU;
9、 STU f(STU a) STU b=“Zhao“, m, 85, 90; int i; strcpy(a name, b name); a sex=b sex; for(i=0; inext; p=s; while(p-next)p=p-next; p-next=q; q-next=NULL; 该程序段实现的功能是 ( A)尾结点成为首结点 ( B)首结点成为尾结点 ( C)删除首结点 ( D)删除尾结点 17 有以下结构体说明、变量定义和赋值语句 struct STDchar name10; int age; char sex; s5, *ps; ps=&s0;则以下 scanf函数调用
10、语句有错误的是 ( A) scanf(“ d“, &s0 age); ( B) scanf(“ c“, &(ps-sex); ( C) scanf(“ s“, s0 name); ( D) scanf(“ d“, ps-age); 18 若有以下语句 typedef struct Sint g; char h; T; 以下叙述中正确的是 ( A)可用 S定义结构体变量 ( B) S是 struct类型的变量 ( C) T是 struct S类型的变量 ( D)可用 T定义结构体变量 19 有以下程序 #include #include Struct A int a; char b10; dou
11、ble c; ; struct A f(struct A t); main() struct A a=1001, “ZhangDa“, 1098 0; a=f(a); printf(“ d, s, 6 1 f n“, a a, a b , a c); struct A f(Struct A t) t a=1002; strcpy(t b, “ChangRong“); t c=1202 0 ; return t; 程序运行后的输出结果是 ( A) 1002, ZhangDa, 1202 0 ( B) 1002, ChangRong, 1202 0 ( C) 1001, ChangRong, 10
12、98 0 ( D) 1001, ZhangDa, 1098 0 20 设有以下语句 typedef struct TTchal c: int a4: CIN;则下面叙述中正确的是 ( A) TT是 struct类型的变量 ( B)可以用 TT定义结构体变量 ( C) CIN是 struct TT类型的变量 ( D)可以用 CIN定义结构体变量 21 有以下程序 #include struct ordint x, y; dt2=1, 2, 3, 4; main()struct ord *p=dt; printf(“ d, “, +(p一 x); printf(“ d n“, +(p一 y); 程
13、序运行后的输出结果是 ( A) 4 1 ( B) 2, 3 ( C) 3, 4 ( D) 1, 2 22 有以下程序段 struct stint x; int*y ; *pt ; int a=1, 2, b=3, 4; struct st c2=10, a, 20, b); pt=c; 以下选项中表达式的值为 11的是 ( A) pt-x ( B) *pt-y ( C) +pt-x ( D) (pt+)-x 23 有下列程序: struct Sint n; int a20; ; void f(int*a, int n) int i; for(i=0; i #include typedef st
14、ructchar name9; char sex; float: score2; )STU; STU f(STU a) STU b=“Zhao“, m, 85 0, 90 0; int i; strcpy(a name, b name); a sex=b sex; for(i=0; inext; free(q); ( B) p=q; free(q); ( C) (*p) next=(*q) next; free(p); ( D) p-next=q-next; free(q); 26 有以下程序 #include #include Struct A int a; char b10; double
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 结构 共用 运算 文件 操作 模拟 答案 解析 DOC
