【计算机类职业资格】计算机二级(C)51及答案解析.doc
《【计算机类职业资格】计算机二级(C)51及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】计算机二级(C)51及答案解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、计算机二级(C)51 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:60,分数:60.00)1.有以下程序 main() char*P=“3697“,“2584“; int i,j;long num=0; for(i-0;iA.35B.37C.39D.39752.在 Windows 环境下,能实现窗口移动的操作是( )。(分数:1.00)A.用鼠标拖动窗口中的任何部位B.用鼠标拖动窗口的边框C.用鼠标拖动窗口的控制按钮D.用鼠标拖动窗口的标题栏。3.若有以下程序段(n 所赋的是八进制数) int m=32767,n=0327
2、67; printf(“%d,%o/n“,m,n); 执行后输出结果是( )。 (分数:1.00)A.32767,32767B.32767,032767C.32767,77777D.32767,0777774.有一个名为 init.txt 的文件,内容如下: #define HDY(A,B) AB #define PRINT(Y)printf(“Y=d/n“,Y) 有以下程序 #include“init.txt“ main() int a=1,b=2,c=3,d=4,k; k=HDY(a+c,b+d); PRINT(k); 下面针对该程序的叙述正确的是【 】。 (分数:1.00)A.编译出错B
3、.运行出错C.运行结果为 y=OD.运行结果为 Y=65.有以下程序 #include #define N 5 #define M N+1 #define f(x) (x*M) main() int i1,i2; i1=f(2); i2=f(1+1); printf(“ddn“,i1,i2); 程序的运行结果是【 】。 (分数:1.00)A.12 12B.11 7C.11 11D.12 76.在深度为 7 的满二叉树中,叶子结点的个数为【 】。(分数:1.00)A.32B.31C.64D.637.有以下程序: int f(int n) if(n =1)return 1; else return
4、 f(n-1)+1; main( ) int i,j=0; for(i=1;i3;i+) j+=f(i); printf(“%d/n“,j); 程序运行后的输出结果是( )。 (分数:1.00)A.4B.3C.2D.18.设 a 和 b 均为 double 型变量,且 a=5.5,b=2.5,则表达式(int)a+b/b 的值是( )。(分数:1.00)A.6.500000B.6C.5.500000D.6.0000009.有以下程序: void f(int*x,int*y) int t; t=*x;*x=*y;*y=t; main() int a 8=1, 2,3,4,5, 6, 7,8,i,
5、*p,*q; p=a;q= while(pq) f(p,q);p+;q-; for(i=0;i8;i+)printf(“%d,“ai); 程序运行后的输出结果是【 】。(分数:1.00)A.823,4,5,6,7,1,B.5,6,7,8,12,3,4,C.1,2,3,4,5,6,7,8,D.8,7,6,5,4,3,2,1,10.若有说明:int n=2,*p=n,*q=p;,则以下非法的赋值语句是( )。(分数:1.00)A.p=q;B.*p=q;C.n=*q;D.p=n;11.十六进制数 100 转换为十进制数为( )。(分数:1.00)A.256B.512C.1024D.6412.下列叙述
6、中正确的是【 】。(分数:1.00)A.一个算法的空间复杂度大,则其时间复杂度也必定大B.一个算法的空间复杂度大,则其时间复杂度必定小C.一个算法的时间复杂度大,则其空间复杂度必定小D.上述三种说法都不对13.若 fp 已正确定义并指向某个文件,当未遇到该文件结束标志时函数 feof(fp)的值为( )。 (分数:1.00)A.0B.1C.-1D.一个非 0 值14.用 C 语言编写的代码程序( )。(分数:1.00)A.可立即执行B.是一个源程序C.经过编译即可执行D.经过编译解释才能执行15.有以下程序 #include main() char p20=a,b,c,d,q=“abc“,r:
7、“abcde“; strcpy(P+strlen(q),r);strcat(p,q); printf(“ddn“,sizeof(p),strlen(p); 程序运行后的输出结果是【 】。 (分数:1.00)A.209B.99C.2011D.111116.有以下程序 main( ) char a,b,c,*d; a=/; b=/xbc; c=/0xab; d=“/0127“; printf(“%c%c%c%c/n“,a,b,c,*d); 编译时出现错误,以下叙述中正确的是( )。 (分数:1.00)A.程序中只有 a=/;语句不正确B.b=/xbc;语句不正确C.d=“/0127“;语句不正确D
8、.a=/;和 c=/0xab;语句都不正确17.设有如下定义: struct sk int a; float b; data; int *p; 若要使 p 指向 data 中的 a 域,正确的赋值语句是( )。 (分数:1.00)A.p=a;B.p=data.a;C.p=data.a;D.*p=data.a;18.计算机网络的主要特点是( )。(分数:1.00)A.运算速度快B.运算精度高C.资源共享D.人机交互19.有以下程序: main() char p=a,b,c,q=“abc“; printf(“%d%d/n“,sizeof(p),sizeof(q); 程序运行后的输出结果是【 】。
9、(分数:1.00)A.4 4B.3 3C.3 4D.4 320.下列选项中不属于结构化程序设计方法的是【 】。(分数:1.00)A.自顶向下B.逐步求精C.模块化D.可复用21.下列选项中不属于软件生命周期开发阶段任务的是【 】。(分数:1.00)A.软件测试B.概要设计C.软件维护D.详细设计22.有以下程序 main( ) int x=102,y=012; printf(“%2d,%2d/n”,x,y); 执行后输出结果是( )。 (分数:1.00)A.10,01B.002,12C.102,10D.02,1023.有以下程序段 int m=0,n=0; char c=a; scanf(“%
10、d%c%d“, printf(“%d,%c,%d/n“,m,c,n); 若从键盘上输入:10A10,则输出结果是( )。 (分数:1.00)A.10,A,10B.10,a,10C.10,a,0D.10,A,024.在多媒体计算机中,CD-ROM 属于( )。(分数:1.00)A.存储媒体B.传输媒体C.表现媒体D.表示媒体25.以下叙述中错误的是【 】。(分数:1.00)A.对于 double 类型数组,不可以直接用数组名对数组进行整体输入或输出B.数组名代表的是数组所占存储区的首地址,其值不可改变C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界“的出错信息D.可以
11、通过赋初值的方式确定数组元素的个数26.用树形结构表示实体之间联系的模型是【 】。(分数:1.00)A.关系模型B.网状模型C.层次模型D.以上三个都是27.有以下程序 void f(int x,int y) int t; if(xy) t=x; x=y; y=t; main( ) int a=4,b=3,c=5; f(a,b); f(a,c); f(b,c); printf(“%d,%d,%d/n“,a,b,c); 执行后输出的结果是( )。 (分数:1.00)A.3,4,5B.5,3,4C.5,4,3D.4,3,528.以下关于函数的叙述中正确的是【 】。(分数:1.00)A.每个函数都可
12、以被其他函数调用(包括 main 函数)B.每个函数都可以被单独编译C.每个函数都可以单独运行D.在一个函数内部可以定义另一个函数29.磁盘处于写保护状态时其中的数据( )。(分数:1.00)A.不能读出,不能删改B.可以读出,不能删改C.不能读出,可以删改D.可以读出,可以删改30.设有定义 int a=2,b=3,c=4;,则以下选项中值为 0 的表达式是【 】。(分数:1.00)A.(!a=1以下 scanf 语句中能正确为变量 a 读入数据的是( )。(分数:1.00)A.scanf(“%d”,pa);B.scanf(“%d”,a);C.scanf(“%d”,D.scanf(“%d”,
13、*pa);33.算法中,对需要执行的每一步操作,必须给出清楚、严格的规定。这属于算法的【 】。(分数:1.00)A.正当性B.可行性C.确定性D.有穷性34.有以下程序 fun(int a, int b) if(ab) return(a); else return(b); main( ) int x=3, y=8, z=6, r; r=fun(fun(x,y), 2*z); printf(“%d/n“, r); 程序运行后的输出结果是( )。 (分数:1.00)A.3B.6C.8D.1235.有以下程序 main() char S=“aeiou“,*ps; ps=S;prinff(“cn“,*
14、ps+4); 程序运行后的输出结果是【 】。 (分数:1.00)A.aB.eC.UD.元素 s4的地址36.以下程序段中与语句 k=ab?(bc?1:0):0;功能等价的是( )。(分数:1.00)A.if(ab) else k=0;B.if(ab)|(bc) k=1 else k=0;C.if(ab) k=1; else if(bc) k=1; else k=0;37.有以下程序 main() int a=1,b=3,C=5,*P; int *pl= for(b=1;b1) return a0+f(a+1,n 一 1);else return a0; main2 int aa10=1,2,3
15、,4,5,6,7,8,9,10,S; S=f(aa+2,4);printf(“dn“,S); (分数:2.00)填空项 1:_75.下列程序的运行结果是: 1 #include string.h char *ss(char *s) return s+strlen(s)/2; main( ) char *p,*str=”abcdefgh”; p=ss(str); printf(“%s/n”,p); (分数:2.00)填空项 1:_76.已定义 charch=$;inti=1,j;,执行 j!=ch printf(“%o/n“,i); (分数:2.00)填空项 1:_80.以下程序运行后的输出结果
16、是 1。 #includestring.h main2 char ch=“abc“,x34;int i; for(i=0;i3;1+)strcpy(xi,ch); for(i=0;i3;i+)printf(“%s“, printf(“%d,%o/n“,m,n); 执行后输出结果是( )。 (分数:1.00)A.32767,32767 B.32767,032767C.32767,77777D.32767,077777解析:4.有一个名为 init.txt 的文件,内容如下: #define HDY(A,B) AB #define PRINT(Y)printf(“Y=d/n“,Y) 有以下程序 #
17、include“init.txt“ main() int a=1,b=2,c=3,d=4,k; k=HDY(a+c,b+d); PRINT(k); 下面针对该程序的叙述正确的是【 】。 (分数:1.00)A.编译出错B.运行出错C.运行结果为 y=OD.运行结果为 Y=6 解析:本题考查的是带参数的宏定义。不仅要进行简单的字符替换,还要进行参数替换。根据宏替换的规则,本题在进行替换宏 HDY 时,没有像所希望的那样将 HDY(a+c,b+d)替换成(a+c)(b+d),而是替换成了“a+eb+d“,因此结果 k 为 6。5.有以下程序 #include #define N 5 #define
18、M N+1 #define f(x) (x*M) main() int i1,i2; i1=f(2); i2=f(1+1); printf(“ddn“,i1,i2); 程序的运行结果是【 】。 (分数:1.00)A.12 12B.11 7 C.11 11D.12 7解析:根据宏替换的替换规则,我们可知,f(2)=2*N+1=2*5+1=11,f(1+1)=1+1*N+1=1+1*5+1=7。因此,本题的答案为选项 B。6.在深度为 7 的满二叉树中,叶子结点的个数为【 】。(分数:1.00)A.32B.31C.64 D.63解析:满二叉树是指除最后一层外,每一层上的所有结点都有两个子结点的二叉
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C51 答案 解析 DOC
