【计算机类职业资格】二级C语言分类模拟题582及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题582及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题582及答案解析.doc(14页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言分类模拟题 582及答案解析(总分:41.00,做题时间:90 分钟)一、选择题(总题数:30,分数:41.00)1.有如下程序: int a10=1,2,3,4,5,6,7,8,9,10; int *p=b=p5; 则 b的值是_。(分数:2.00)A.5B.6C.9D.82.以下叙述中正确的是_。(分数:1.00)A.在 C语言中,预处理命令行都以“#”开头B.预处理命令行必须位于 C源程序的起始位置C.#includestdio.h必须放在 C程序的开头D.C语言的预处理不能实现宏定义和条件编译的功能3.数据库系统的三级模式不包括_。(分数:2.50)A.概念模式B.内模式C
2、.外模式D.数据模式4.有以下程序 #includestdio.h struct ord int x, y;dt2=1, 2, 3, 4; main() struct ord *p=dt; printf(“%d,“, +(p-x); printf(“%d/n“, +(p-y); 程序运行后的输出结果是_。(分数:2.00)A.1, 2B.4, 1C.3, 4D.2, 35.有以下程序: #include stdio.h #include string.h char * a = “you“; char * b = “Welcome you to Beijing!“; main( ) char *
3、 p; p = b; while (*p!= *a)p+; p += strlen(a) + 1; printf(“%s/11“,p); 程序运行后的输出结果是_。(分数:1.00)A.Beijing!B.you to Beijing!C.Welcome you to Beijing!D.to Beijing!6.有以下程序: #include stdio.h int f(int n) if(n=1) return 1; else return f(n-1) +1; main() inti, j=0; for(i=1; i3; i+) j+=f(i); print(“%d/n“, j); 程序
4、运行后的输出结果是( )。(分数:1.00)A.4B.3C.2D.17.C语言提供的合法的数据类型关键字是_。(分数:1.00)A.DoubleB.floatC.integerD.Char8.有以下程序: #includestdio.h main() int i=1, j=3; printf(“%d,“, i+); int i=0; i+=j*2; printf(“%d, %d, “, i, j); printf(“%d, %d/n“, i, j); 程序运行后的输出结果是(分数:1.00)A.1,6,3,1,3B.1,6,3,2,3C.1,6,3,6,3D.1,7,3,2,39.某二叉树的中
5、序序列为 BDCA,后序序列为 DCBA,则前序序列为_。(分数:1.00)A.DCBAB.BDCAC.ABCDD.BADC10.有以下程序: #includestdio.h void func(int n) int i; for(i=0; i=n; i+)printf(“*“); printf(“#“); main() func(3); printf(“?“); func(4); printf(“n“); 程序运行后的输出结果_。(分数:1.00)A.*#?*#B.*#?*#C.*#?*#D.*#?*#11.下列叙述中错误的是_。(分数:2.50)A.C程序可以由一个或多个函数组成B.C程序
6、可以由多个程序文件组成C.一个 C语言程序只能实现一种算法D.一个 C函数可以单独作为一个 C程序文件存在12.有如下程序 #includestdio.h main() char a,b; int i; a=“3“; b=“A“; for(i=0;i6;i+) if(i%2)putchar(a+i); else putchar(b+i); 程序运行后的输出结果是_。(分数:1.00)A.AB56EFB.A4C6E8C.B4D6F8D.A5C7E913.有以下程序 #includestdio.h main() int i; for(i=1;i=40;i+) if(i+%5=0) if(+i%8=
7、0)printf(“%d“,i); printf(“/n“); 执行后的输出结果是_。(分数:1.00)A.32B.24C.5D.4014.数据库系统的三级模式不包括_。(分数:2.00)A.概念模式B.内模式C.外模式D.数据模式15.有以下程序: main() int c=35; printf(“%d/n“,c 程序运行后的输出结果是 _ 。(分数:1.00)A.0B.70C.35D.116.下列叙述中正确的是_。(分数:1.00)A.程序执行的效率与数据的存储结构密切相关B.程序执行的效率只取决于程序的控制结构C.程序执行的效率只取决于所处理的数据量D.以上三种说法都不对17.下列程序的
8、输出结果是_。 #include stdio.h int b=2; int func(int*a) b+=*a; return (b); main() int a=2, res=2; res+=func( printf(“% d/n“, res); (分数:1.00)A.4B.6C.8D.1018.有如下程序: #include stdio.h main() int i,*ptr; int array5 = 5,3,1; for(ptr=array, i=0; i5; i+, ptr+) if (*ptr = 0) putchar(“X“); else putchar(“A“+*ptr); p
9、rintf(“/n“); 程序运行后的输出结果是_。(分数:1.00)A.FDBXXB.FFFXXC.FDBBBD.ABCDE19.一棵二叉树共有 25个结点,其中 5个是叶子结点,则度为 1的结点数为_。(分数:1.00)A.16B.10C.6D.420.逻辑模型是面向数据库系统的模型,下面属于逻辑模型的是_。(分数:1.00)A.关系模型B.谓词模型C.物理模型D.实体联系模型21.下列叙述中错误的是_。(分数:2.00)A.C程序可以由多个程序文件组成B.一个 C语言程序只能实现一种算法C.C程序可以由一个或多个函数组成D.一个 C函数可以单独作为一个 C程序文件存在22.在 E-R图中
10、,用来表示实体联系的图形是_。(分数:2.50)A.椭圆形B.矩形C.菱形D.三角形23.若有以下程序: #include stdio.h void f(int n); main() void f(int n); f(5); void f(int n) printf(“% d/n“, n); 则以下叙述中,不正确的是_。(分数:1.00)A.若在主函数中对函数 f()进行说明,则只能在主函数中正确调用函数 f()B.若在主函数前对函数 f()进行说明,则在主函数和其他函数中都可以正确调用 f()C.对于以上程序,编译时系统会报错,提示对 f()函数重复说明D.函数 f()无返回值,所以可用 v
11、oid将其类型定义为无值型24.若有如下程序: main() int x=9,y=4,n=0; switch(x%2) case 0:n+;break; case 1:n+; case 0:n+;break; printf(“%d/n“,n); 则程序运行后的输出结果是( )。(分数:1.00)A.1B.2C.3D.编译错误25.以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是 _ 。(分数:2.00)A.char s10=“abcdefg“;B.char t=“abcdefg“,*s=t;C.char s10;s=“abcdefg“;D.char s10;strcpy(s,“abc
12、defg“);26.在 C语言中,只有在使用时才占用内存单元的变量,其存储类型是_。(分数:1.00)A.auto和 registerB.extern和 registerC.auto和 staticD.static和 register27.若变量都已正确说明,则以下程序段输出结果为_。 #includestdio.h main() char a=“a“; int b=2; printf(ab?“*a=%d“:“#b=%d“,a,b); (分数:2.50)A.*a=3B.#b=3C.*a=3#b=5D.全部错误28.下列叙述中正确的是_。(分数:1.00)A.循环队列有队头和队尾两个指针,因此,
13、循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数由队头指针和队尾指针共同决定29.设有表示学生选课的三张表,学生 S(学号,姓名,性别,年龄,身份证号),课程 C(课号,课名),选课 SC(学号,课号,成绩),则表 SC的关键字(键或码)为_。(分数:1.00)A.课号,成绩B.学号,成绩C.学号,课号D.学号,姓名,成绩30.对于下列定义,不正确的叙述是 _ 。 union data int a; char b; double c; x=y;(分数:1.00)A.变量
14、x所占内存的长度等于成员 c的长度B.变量 x的地址和它的各成员地址都是相同的C.可以在定义时对 x初始化D.不能对变量 x赋值,故 x=y非法二级 C语言分类模拟题 582答案解析(总分:41.00,做题时间:90 分钟)一、选择题(总题数:30,分数:41.00)1.有如下程序: int a10=1,2,3,4,5,6,7,8,9,10; int *p=b=p5; 则 b的值是_。(分数:2.00)A.5B.6C.9 D.8解析:2.以下叙述中正确的是_。(分数:1.00)A.在 C语言中,预处理命令行都以“#”开头 B.预处理命令行必须位于 C源程序的起始位置C.#includestdi
15、o.h必须放在 C程序的开头D.C语言的预处理不能实现宏定义和条件编译的功能解析:解析 预处理命令是以“#”号开头的命令,它们不是 C语言的可执行命令,这些命令应该在函数之外书写,一般在源文件的最前面书写,但不是必须在起始位置书写,所以 B、C 选项错误。C 语言的预处理能够实现宏定义和条件编译等功能,所以 D选项错误。所以选择 A选项。3.数据库系统的三级模式不包括_。(分数:2.50)A.概念模式B.内模式C.外模式D.数据模式 解析:解析 数据库系统的三级模式是概念模式、外模式和内模式,不包括数据模式,因此选择 D。4.有以下程序 #includestdio.h struct ord i
16、nt x, y;dt2=1, 2, 3, 4; main() struct ord *p=dt; printf(“%d,“, +(p-x); printf(“%d/n“, +(p-y); 程序运行后的输出结果是_。(分数:2.00)A.1, 2B.4, 1C.3, 4D.2, 3 解析:解析 p-x 为 1,p-y 值为 2,前置自增表达式分别为 2, 3,所以选择 D。5.有以下程序: #include stdio.h #include string.h char * a = “you“; char * b = “Welcome you to Beijing!“; main( ) char
17、* p; p = b; while (*p!= *a)p+; p += strlen(a) + 1; printf(“%s/11“,p); 程序运行后的输出结果是_。(分数:1.00)A.Beijing!B.you to Beijing!C.Welcome you to Beijing!D.to Beijing! 解析:解析 while 函数判断 p指针指向地址的内容是否和 a指针指向地址的内容相等,如果不是,则移动指针 p+1,当 p指向* b 字符串中的y时,和*a 首地址元素相等,退出 while语句后,p 再向右移动 a字符串长度+1 个单位地址,此时 p指向t,输出t及剩余的字符串,
18、答案为 D选项。6.有以下程序: #include stdio.h int f(int n) if(n=1) return 1; else return f(n-1) +1; main() inti, j=0; for(i=1; i3; i+) j+=f(i); print(“%d/n“, j); 程序运行后的输出结果是( )。(分数:1.00)A.4B.3 C.2D.1解析:解析 在 mam函数中,对 f(1)和 f(2)的值进行了累加。f(1)=1,f(2)=f(1)+1=2 最后,j 的值为1+2=3。7.C语言提供的合法的数据类型关键字是_。(分数:1.00)A.DoubleB.flo
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 582 答案 解析 DOC
