【计算机类职业资格】二级C语言分类模拟题556及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题556及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题556及答案解析.doc(19页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言分类模拟题 556及答案解析(总分:64.00,做题时间:90 分钟)一、选择题(总题数:40,分数:64.00)1.函数调用 strcat(strcpy(str1, str2), str3)的功能是_。(分数:2.50)A.将字符串 str1复制到字符串 str2中后再连接到字符串 str3之后B.将字符串 str1连接到字符串 str2之后再复制到字符串 str3之后C.将字符串 str2复制到字符串 str1之后再将字符串 str3连接到字符串 str1之后D.将字符串 str2连接到字符串 str1之后再将字符串 str1复制到字符串 str3中2.有以下程序 #inclu
2、destdio.h void f(int*q) int i=0; for(;i5;i+)(*q)+; main() int a5=1,2,3,4,5,i; f(a); for(i=0;i5;i+)printf(“%d,“,ai); 程序运行后的输出结果是_。(分数:1.00)A.6,2,3,4,5,B.2,2,3,4,5,C.1,2,3,4,5,D.2,3,4,5,6,3.有下列程序段: typedef struct NODE int num;structNODE*next; OLD; 下列叙述中正确的是_。(分数:3.00)A.以上的说明形式非法B.NODE是一个结构体类型C.OLD是一个结
3、构体类型D.OLD是一个结构体变量4.下列语句中存在语法错误的是_。(分数:2.00)A.char ss620;ss1=“right?“;B.char ss20=“right?“;C.char*ss6;ss1=“right?“;D.char*ss=“right?“;5.以下选项中叙述错误的是_。(分数:1.00)A.C程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值B.在同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内C.C程序函数中定义的自动变量,系统不自动赋确定的初值D.C程序函数的性能不可以说明为 static型变量6.有以下程序: #includestdio
4、.h #includestdlib.h int fun(int n) int *p; p=(int*)malloc(sizeof(int); *p=n; return *p; main() int a; a=fun(10); printf(“%d/n“,a+fun(10); 程序运行后的输出结果是_。(分数:1.00)A.0B.10C.20D.出错7.有以下程序(strcpy 为字符串复制函数,strcat 为字符串连接函数): #includestdio.h #includestring.h main() char a10=“abc“, b10=“012“, c10=“xyz“; strcp
5、y(a+1, b+2); puts(strcat(a, c+1); 程序运行后的输出结果是_。(分数:1.00)A.a12xyzB.12yzC.a2yzD.bc2yz8.软件设计中模块划分应遵循的准则是_。(分数:1.00)A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合9.以下程序运行后的输出结果是 #includestdio.h void f(int *P); main() int a5=1, 2, 3, 4, 5, *r=a; f(r); printf(“%d/n“, *r); void f(int *P) P=p+3; printf(“%d, “, *P); (分数:2
6、.00)A.1,4B.4,4C.3,1D.4,110.下列描述中正确的是(分数:1.00)A.程序就是软件B.软件开发不受计算机系统的限制C.软件既是逻辑实体,又是物理实体D.软件是程序、数据与相关文档的集合11.以下程序的输出结果是_。 #includestdio.h struct st intx;int *y; *p; int dt4=1,2,3,4); struct st aa4=2, main() p=aa; printf(“%d/n“,+(p-x); (分数:2.00)A.1B.2C.3D.412.下述程序的输出结果是_。 # includestdio.h main() int i;
7、 for(i=1;i=10;i+) if(i*i=20)(i*1=100) break; printf(“%d/n“,i*i); (分数:1.00)A.49B.36C.25D.6413.有下列二叉树,对此二叉树前序遍历的结果为 _ 。 (分数:2.00)A.XZCYABB.XYZABCC.XYABCZD.XYAZBC14.以下不能输出字符 A的语句是(注:字符 A的 ASCII码值为 65,字符 a的 ASCII码值为 97)_。(分数:2.00)A.printf(“%c/n“,“a“-32);B.printf(“%d/n“,“A“);C.printf(“%c/n“,65);D.printf(
8、“%c/n“,“B“-1);15.有以下程序 #includestdio.h main() unsigned char a=8, c; c=a3; printf(“%d/n“, c); 程序运行后的输出结果是_。(分数:2.00)A.32B.16C.1D.016.有以下程序: #includestdio.h int fun(char s) int n=0; while(*s=“9“ s+; return(n); main() char s10=“6“, “1“, “*“, “4“, “*“, “9“, “*“, “0“, “*“; printf(“%d“, fun(s); 程序运行的结果是_。
9、(分数:2.50)A.9B.61490C.61D.517.下列定义变量的语句中错误的是_。(分数:2.00)A.int_int;B.double int_;C.char For;D.float US $;18.下列程序的运行结果为_。 #includestdio.h void abc(char*str) int a,b,i,j; for(i=j=0;stri!=“/0“;i+) if(stri!=“a“) strj+=stri; strj=“/0“; void main() char str=,abcdef“; abc(str); printf(“str=%s“,str); (分数:2.50)
10、A.str=bcdefB.str=abcdefC.str=aD.str=ab19.以下选项中非法的字符常量是_。(分数:1.00)A.“/101“B.“/65“C.1/xff“D.“/019“20.以下数组定义中错误的是_。(分数:1.00)A.int x3=1,2,3,4,5,6;B.int x3=0;C.int x23=1,2,3,4,5,6;D.int x23=1,2,3,4,5,6;21.下面说明不正确的是 _ 。(分数:1.00)A.chara10=“china“;B.chara10,*p=a;p=“chiua“;C.char*a;a=“china“;D.chara10,*p;p=a
11、=“china“;22.有以下程序: #include stdio.h void fun(int a, int b) int t; t=a; a=b; b=t; main() int c10=1,2,3,4,5,6,7,8,9,0, i; for(i=0; i10; i+=2) fun(ci, ci+1); for(i=0; i10; i+) printf(“%d,“, ci); printf(“/n“); 程序的运行结果是_。(分数:2.00)A.1,2,3,4,5,6,7,8,9,0,B.2,1,4,3,6,5,8,7,0,9,C.0,9,8,7,6,5,4,3,2,1,D.0,1,2,3
12、,4,5,6,7,8,9,23.有以下程序,程序中库函数 islower(ch)用以判断 ch中的字母是否为小写字母: #include stdio.h #include void fun(char *p)int i=0;while(pi)if(pi=“i+ +;main( )char s1100=“ab cd EFG!“;fun(s1);printf(“%s/n“,s1);程序运行后的输出结果是_。 A.ab cd EFg! B.Ab Cd EFg! C.ab cd EFG! D.aB cD EFG!A B C D D解析 调用 fun函数后,实参数组名 s1传给形参指针 p,p 也指向数组
13、 sl。fun 函数的功能是遍历字符数组中的所有字符,如果某一个字符是空格并且前一个字符是小写字母,就把前一个字符转换为大写。程序中语句 pi-1=pi-1-“a“+“A“;即 pi-1=pi-1=32,意思是将 pi-1中的字符转换为大写。因此 D选项正确。(分数:2.00)A.ab cd EFg!B.Ab Cd EFg!C.ab cd EFG!D.aB cD EFG!24.下列叙述中错误的是_。(分数:1.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统
14、的支持25.下面不能作为结构化方法软件需求分析工具的是_。(分数:1.00)A.系统结构图B.数据字典(DD)C.数据流程图(DFD 图)D.判定表26.以下关于逻辑运算符两侧运算对象的叙述中正确的是_。(分数:1.00)A.可以是任意合法的表达式B.只能是整数 0或非 0整数C.可以是结构体类型的数据D.只能是整数 0或 127.若有定义:double a=22;int i=0, k=18;,则以下不符合 C语言规定的赋值语句是_。(分数:1.00)A.i=(a+k)=(i+k);B.i=a%11;C.a=a+, i+;D.i=!a;28.有以下函数 int fun(char*s) char
15、*t=s; while(*t+); return(t-s); 该函数的功能是_。(分数:1.00)A.计算 s所指字符串占用内存字节的个数B.比较两个字符串的大小C.计算 s所指字符串的长度D.将 s所指字符串复制到字符串 t中29.在面向对象方法中,不属于“对象”基本特点的是_。(分数:2.00)A.一致性B.分类性C.多态性D.标识唯一性30.有以下程序: #includestdio.h main() int x=0x13; printf(“INT:%d/n“,x+1); 程序运行后的输出结果是_。(分数:1.00)A.INT:14B.INT:13C.INT:12D.INT:2031.执行
16、下列程序中的输出语句后,a 的值是 _ 。 main() int a; printf(“%d/n“,(a=2*3,a*5,a+7); (分数:2.00)A.17B.37C.6D.1332.以下关于字符串处理的叙述正确的是_。(分数:1.00)A.进行字符串复制时,目的串的存储空间必须足够大B.两个字符串进行比较时,短的一个必定比长的一个小C.计算一个字符串的长度时,应包含串尾的结束标志D.两个字符串连接时,对存储空间的大小没有要求33.有以下程序: #include stdio.h int a=1,b=2; void fun1(int a,int b) printf(“%d%d“,a,b);
17、void fun2() a=3;b=4; main( ) fun1(5,6);fun2(); printf(“%d%d/n“,a,b); 程序运行后的输出结果是_。(分数:1.00)A.5 6 1 2B.3 4 5 6C.1 2 5 6D.5 6 3 434.交换两个变量的值,不允许用临时变量,应该使用下列_位运算符。(分数:2.50)A. for(i=0;in;i+)sum+=xi; return sum; main() int a=1,2,3,4,5,b=6,7,8,9,s=0; s=fun(a,5)+fun(b,4); printf(“%d/n“,s); 程序执行后的输出结果是_。(分数
18、:1.00)A.55B.50C.45D.6036.以下叙述中正确的是_。(分数:2.00)A.语句 int a3=1,2,4,5;是错误的初始化形式B.语句 int a43=1,2,4,5;是错误的初始化形式C.在逻辑上,可以把二维数组看成是一个具有行和列的表格或矩阵D.语句 int a43=1,2,4,5;是错误的初始化形式37.以下关于 fclose(fp)函数的叙述正确的是_。(分数:1.00)A.当程序中对文件的所有写操作完成之后,必须调用 fclose(fp)函数关闭文件B.当程序中对文件的所有写操作完成之后,不一定要调用 fclose(fp)函数关闭文件C.只有对文件进行输入操作之
19、后,才需要调用 fclose(fp)函数关闭文件D.只有对文件进行输出操作之后,才能调用 fclose(fp)函数关闭文件38.下列关于栈的叙述正确的是_。(分数:2.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据39.在 C语言中,只有在使用时才占用内存单元的变量,其存储类型是_。(分数:2.50)A.auto和 staticB.extern和 registerC.auto和 registerD.static和 register40.以下定义语句中正确的是_。(分数:2.50)A.float a=1,*b=B.int a=b=0;C.ch
20、ar A=65+1,b=“b“;D.double a=0.0;b=1.1;二级 C语言分类模拟题 556答案解析(总分:64.00,做题时间:90 分钟)一、选择题(总题数:40,分数:64.00)1.函数调用 strcat(strcpy(str1, str2), str3)的功能是_。(分数:2.50)A.将字符串 str1复制到字符串 str2中后再连接到字符串 str3之后B.将字符串 str1连接到字符串 str2之后再复制到字符串 str3之后C.将字符串 str2复制到字符串 str1之后再将字符串 str3连接到字符串 str1之后 D.将字符串 str2连接到字符串 str1之
21、后再将字符串 str1复制到字符串 str3中解析:解析 strcat(s1,s2)函数的功能是把 s2字符串连接到 s1字符串末尾,strcpy(s1,s2)是把 s2字符串复制到 s1字符串,要保证 s1的容量。2.有以下程序 #includestdio.h void f(int*q) int i=0; for(;i5;i+)(*q)+; main() int a5=1,2,3,4,5,i; f(a); for(i=0;i5;i+)printf(“%d,“,ai); 程序运行后的输出结果是_。(分数:1.00)A.6,2,3,4,5, B.2,2,3,4,5,C.1,2,3,4,5,D.2
22、,3,4,5,6,解析:解析 f 函数将 a0自增 5次,所以答案选择 A。3.有下列程序段: typedef struct NODE int num;structNODE*next; OLD; 下列叙述中正确的是_。(分数:3.00)A.以上的说明形式非法B.NODE是一个结构体类型C.OLD是一个结构体类型 D.OLD是一个结构体变量解析:4.下列语句中存在语法错误的是_。(分数:2.00)A.char ss620;ss1=“right?“; B.char ss20=“right?“;C.char*ss6;ss1=“right?“;D.char*ss=“right?“;解析:解析 数组定义
23、后,不可以对数组整体赋值,s 是二维数组,因 ss1是一维字符数组,即字符串,字符串赋值可以使用“strcpy(ss1,“right“);”这样的形式,而 A选项中对二维数组中的第“1”维(相当于一个一维数组)赋值是不可以的。B 选项和 D选项是定义时对数组初始化,这是可以的。在 C选项中,将字符串在内存中的首地址赋给指针数组的一个元素,这是可以的。5.以下选项中叙述错误的是_。(分数:1.00)A.C程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次初值 B.在同一函数中,各复合语句内可以定义变量,其作用域仅限本复合语句内C.C程序函数中定义的自动变量,系统不自动赋确定的初值D.C程
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 556 答案 解析 DOC
