[计算机类试卷]国家二级(C语言)机试模拟试卷127及答案与解析.doc
《[计算机类试卷]国家二级(C语言)机试模拟试卷127及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C语言)机试模拟试卷127及答案与解析.doc(27页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C语言)机试模拟试卷 127及答案与解析 一、选择题 1 在关系代数运算中,有 5种基本运算,它们是 ( )。 ( A)并 ( )、差 (-)、交 ()、除 ()和笛卡儿积 () ( B)并 ( )、差 (-)、交 ()、投影 ()和选择 () ( C)并 ( )、交 ()、投影 ()、选择 ()和笛卡儿积 () ( D)并 ( )、差 (-)、投影 ()、选择 ()和笛卡儿积 () 2 在数据库系统的组织结构中,下列 ( )映射把用户数据库与概念数据库联系了起来。 ( A)外模式模式 ( B) 内模式外模式 ( C)模式内模式 ( D)内模式模式 3 下列关于线性链表的描述中,正
2、确的是 ( )。 I、只含有一个指针域来存放下一个元素地址 II、指针域中的指针用于指向该结点的前一个或后一个结点 (即前件或后件 ) III、结点由两部分组成:数据域和指针域。 ( A)仅 I、 II ( B)仅 I、 III ( C)仅 II、 III ( D)全部 4 下面关于数据库三级模式结构的叙述中,正确的是 ( )。 ( A)内模式可以有多个,外模式和模式只有一个 ( B)外模式可 以有多个,内模式和模式只有一个 ( C)内模式只有一个,模式和外模式可以有多个 ( D)模式只有一个,外模式和内模式可以有多个 5 设有关键码序列 (66, 13, 51, 76, 81, 26, 57
3、, 69, 23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为 ( )。 ( A) 23, 13, 51, 57, 66, 26, 81, 69, 76 ( B) 13, 23, 26, 51, 57, 66, 81, 76, 69 ( C) 23, 13, 51, 57, 26, 66, 81, 69, 76 ( D) 23, 1 3, 51, 57, 81, 26, 66, 69, 76 6 下列哪一条不属于数据库设计的任务 ?( ) ( A)设计数据库应用结构 ( B)设计数据库概论结构 ( C)设计数据库逻辑结构 ( D)设计数据
4、库物理结构 7 数据库技术的根本目标是 ( )。 ( A)数据存储 ( B)数据共享 ( C)数据查询 ( D)数据管理 8 需求分析阶段的任务是 ( )。 ( A)软件开发方法 ( B)软件开发工具 ( C)软件开发费用 ( D)软件系统功能 9 关系数据库管理系统能实现的 专门关系运算包括 ( )。 ( A)排序、索引、统计 ( B)选择、投影、连接 ( C)关联、更新、排序 ( D)显示、打印、制表 10 数据管理技术发展的三个阶段中, ( )没有专门的软件对数据进行管理。 I人工管理阶段 II文件系统阶段 III数据库阶段 ( A)仅 I ( B)仅 III ( C) I和 II (
5、D) II和 III 11 下面说法正确的是 ( )。 ( A)一个 C程序可以有多个主函数 ( B)一个 C语言的函数中只允许有一对花括号 ( C) C程序 的书写格式是自由的,一个语句可以写在一行上,也可以写在多行内 ( D)在对 C程序进行编译时,可以发现注释行中的拼写错误 12 下列不合法的用户标识符是 ( )。 ( A) j2_KEY ( B) Double ( C) 4d ( D) _8_ 13 以下 4个选项,不能看作一条语句的是 ( )。 ( A) ; ( B) int x=0, y=1, z=0; ( C) if(1a); ( D) if(b=0)m=1; n=2; 14 设
6、 a和 b均为 int型变量,且 a=6、 b=11、 c=3,则能使值为 3的表达式 足 ( )。 ( A) b (c 4) ( B) b (c-a 5) ( C) b a-a 5 ( D) (b a)-(a 4) 15 以下程序的输出结果是 ( )。 main() int a=4, b=3, c=2, d=1; printf(“ d“, ab?a: dc?d: b); ( A) 1 ( B) 3 ( C) 2 ( D) 4 16 阅读以下程序 #include main() Int Case; float printF; printf(“请输入 2个数: “); scanf(“ d f“,
7、 &Case, &printF); printf(“ d f n“, Case, printF); 以下说法正确的是 ( )。 ( A)定义语句出错, Case是关键字,不能用作用户自定义标识符, printF不能用作用户自定义标识符 ( B)定义语句出错, Int无法被识别 ( C)定义语句无错, scanf不能作为输入函数使用 ( D)定义语句无错, printf不能输出 Case的值 17 若有定义: float x=1 5; int a=1, b=3, c=2;则正确的 switch语句是 ( )。 ( A) switch(x) case 1 0: printf(“* n“); cas
8、e 2 0: printf(“* n“); ( B) switch(int)x); case 1: printf(” n“); case 2: printf(“* n“); ( C) switch(a+b) case 1: printf(“* n“); case 2+1: printf(“* n“); ( D) switch(a+b) case l: printf(“* n“); case c: printf(“* n“); 18 有以下程序: main() int k=33; printf(“ d, o, x“, k, k, k); 执行后的输出结果是 ( )。 ( A) 33, 033,
9、0x21 ( B) 33, 033, 21 ( C) 33, 041, 021 ( D) 33, 41, 21 19 当输入为 “Fool&Swalow“时,下面程序的执行结果是 ( )。 #include main() char c; while(c!=?) c=getchar(); putchar(c); ( A) Swalow ( B) Fool ( C) Fool? ( D) ?Swalow 20 下面程序段的输出结果是 ( )。 #include main() float x=1 236547; printf(“ f n“, (int)(x*1000+0 5) (float)1000
10、); ( A) 1 237000 ( B)输出格式说明与输出项不匹,输出无定值 ( C) 1 236000 ( D) 1 24 21 若变量都已正确说明,则以下程序段 ( )。 #include main() int a=8; int b=6: printf(ab?“&a= d“: “!b= d“, a, b); ( A)输出为: &a=8 ( B)输出为: !b=8 ( C)输出为: &a=8 !b=6 ( D)全部错误 22 语句 “printf(“a bhow are y bou n“); ”的输出结果是 ( )。 ( A) a bhow are y kbou ( B) a bhowk
11、are y bou ( C) howareyou ( D) ahowarey bou 23 下面程序的运行结果是 ( )。 #include main() int i; for(i=1; i void del(char*s) int i, j; char*a; a=s: for(i=0, j=0; ai!= 0; i+) if(ai=0&ai main() void fun(int*a, int*b) int a=1, b=2, *x= a, *y=&b; int*k; fun(x, y); k=a; a=b; b: k; )printf(“ d d“, a, b); ( A) 2 1 ( B
12、) 1 2 ( C)编译出错 ( D) 0 0 29 下列二维数组初始化语句中,正确且与语句 int a3=1, 2, 3, 4, 5)等价的是 ( )。 ( A) int a2=1, 2, 3, 4, 5); ( B) int a3=1, 2, 3, 4, 5, 0; ( C) int a3=1, 0, 2, 0), 3, 0; ( D) int a2=1, 2, 3, 4, 5, 6; 30 有以下字符串,说明表达式 strlen(s)值的是 ( )。 char s10=a, n, a, b、 t, c; ( A) 10 ( B) 1 ( C) 6 ( D) 7 31 有以下程序: #in
13、clude main() void fun(char*c, int d) char a=F, b=f; *c=*c+1; fun(&b, a); d+=1; printf(“ c, c n“, a, b); printf(“ c, c“, *c, d); 程序的输出结果为 ( )。 ( A) g, GF, g ( B) g, FF, g ( C) GfF, G ( D) f, gf, g 32 若有以下定义,则对 a数组元素地址的正确引用是 ( )。 int a5, *p=a; ( A) p+5 ( B) *a+1 ( C) a+1 ( D) &a0 33 判断字符串 s1是否大于字符串 s2
14、,应该使用 ( )。 ( A) if(strcmp(s1, s2)s2) ( C) iffstrcmp(s2, s1) #include main() int i; char string20, str320; for(i=0; i0)strcpy(string, str0); else strcpy(string, str1); if(strcmp(str2, string)0)strcpy(string, str2); printf(“ stt string); ( A) bcdefgh ( B) m ( C) abcdefg ( D) bcdefgh或 abcdefg 35 请阅读以下程
15、序: #include #include void fun(int b) main() static int i=0; int k, a5=1, 3, 5, 4, 9; Do bi+=bi+1; fun(a); while(+ii共执行的次数是 ( )。 main() int i=0, j=10, k=2, s=0; for(; ) i+=k; if(ij)printf(“ d“, s); break; s+=i; ( A) 4 ( B) 7 ( C) 5 ( D) 6 37 下列程序的输出 结果是 ( )。 #include main() struct st int y, x, z; ; u
16、nion long i; intj; char k; )un; printf(“ d, d n“, sizeof(struct st), sizeof(un); ( A) 6, 2 ( B) 6, 4 ( C) 8, 4 ( D) 8, 6 38 以下对联合类型叙述正确的是 ( )。 ( A)可以对联合变量名直接赋值 ( B)使用联 合变量的目的是为了节省内存 ( C)任何一个联合变量可以同时引用联合中的不同成员 ( D)联合类型定义中不能同时出现结构类型的成员 39 以下程序中 C的二进制值是 ( )。 char a=2, b=4, c; c=ab2 ( A) 00000011 ( B) 0
17、0010100 ( C) 00011100 ( D) 00011000 40 有以下程序 #include main() FILE*fp; int i=20, j=30, k, n; fp=fopen(“d1 dat“, “w“); fprintf(fp, “ d n“, i); fprintf(fp, “ d n“, j); fclose(fp); fp=fopen(“d1 dat“, “r“); fscanf(fp, “ d d“, k, &n); printf(“ d d n, k, n); fclose(fp); 程序运行后的输出结果是 ( )。 ( A) 20 30 ( B) 20
18、50 ( C) 30 50 ( D) 30 20 二、程序填空题 41 给定程序的功能是:从键盘输入若干行文本 (每行不超过 80个字符 ),写到文件myfile4 txt中,用 -1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数 ReadText和 WriteText实现。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的 BLANKl C中。不得增行或删行,也不得更改程序的结构 ! #include #include #include void WriteText(FILE*); void Rea
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 模拟 127 答案 解析 DOC
