ImageVerifierCode 换一换
格式:DOC , 页数:19 ,大小:107KB ,
资源ID:1337723      下载积分:5000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-1337723.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(【计算机类职业资格】计算机二级(C)33及答案解析.doc)为本站会员(刘芸)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

【计算机类职业资格】计算机二级(C)33及答案解析.doc

1、计算机二级(C)33 及答案解析(总分:3040.00,做题时间:120 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:50,分数:3000.00)1.若要求定义具有 10 个 int 型元素的一维数组 a,则以下定义语句中错误的是【 】。(分数:60.00)A.#define N 10B.#define n 5int aN; int a2*n;C.int a5+5;D.int n=10,an.2.“商品“与“顾客“两个实体集之间的联系一般是【 】。(分数:60.00)A.一对一B.一对多C.多对一D.多对多3.有以下函数 int fun(char *S) char *t

2、=s; while(*t+); return(t-S); 该函数的功能是【 】。(分数:60.00)A.比较两个字符串的大小B.计算 S 所指字符串占用内存字节的个数C.计算 S 所指字符串的长度D.将 S 所指字符串复制到字符串 t 中4.设变量均已正确定义,若要通过 scanf(“dcdc“, int w; long c; 若各变量已正确赋值,则下列选项中正确的表达式是( )。 (分数:60.00)A.a=a+b=b+B.w%(int)a+b)C.(c+w)%(int)aD.w=a=b;6.在 Internet 中,用于在计算机之间传输文件的协议是( )。(分数:60.00)A.TELNE

3、TB.BBSC.FTPD.WWW7.对如下二叉树,进行后序遍历的结果为【 】。 (分数:60.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA8.有以下程序 void swap(char*X,char,*y) char t; t=*X;*X=* Y;*Y=t; main() char*s1=“abc“,*s2=“123“; swap(s1,s2);printf(“S,sn“,s1,s2); 程序执行后的输出结果是【 】。 (分数:60.00)A.123,abcB.abc,123C.1bc,a23D.321,cba9.若有定义语句:int k23,* pk3;,则以下语句中

4、正确的是【 】。(分数:60.00)A.pk=k;B.pk 0=i+) s+=aai1; printf(“%d/n“,s); 程序运行后的输出结果是( )。 (分数:60.00)A.11B.19C.13D.2011.设有如下说明 typedef struct int n; char c; double x;STD; 则以下选项中 ,能正确定义结构体数组并赋初值的语句是( )。 (分数:60.00)A.STD tt2=1,A,62,2,B,75;B.STD tt2=1,“A“,62,2,“,75;C.struct tt2=1,A,2,B;D.struct tt2=1,“A“,62.5,2,“B“

5、,75.0;12.以下选项中,值为 1 的表达式是【 】。(分数:60.00)A.1-0B.1-0C.1-0D.0-013.在 16 位编译系统上,若有定义 int a=10,20,30,*P= m-=n; printf(“%X/n“,m); 执行后输出结果是( )。 (分数:60.00)A.0X0B.0x0C.0D.0XABC15.有以下程序 void f(int*q) int i=0; for(;iA.2,2,3,4,5,B.6,2,3,4,5,C.1,2,3,4,5,D.2,3,4,5,6,16.若有以下程序段(n 所赋的是八进制数) int m=32767,n=032767; prin

6、tf(“%d,%o/n“,m,n); 执行后输出结果是( )。 (分数:60.00)A.32767,32767B.32767,032767C.32767,77777D.32767,07777717.有以下程序 main() union char ch2; int d; S; S.d=0x4321; printf(“x,xn“,S.ch0,S.ch1); 在 16 位编译系统上,程序执行后的输出结果是【 】。 (分数:60.00)A.21,43B.43,21C.43D.21,0018.有以下程序: main( ) int i,n=0; for(i=2;iA.n=5B.n=2C.n=3D.n=41

7、9.以下不能正确定义二维数组的选项是( )。(分数:60.00)A.int a22=1,2;B.int a 2=1,2,3,4;C.int a22=1,2,3;D.int a2 =1,2,3,4;20.下列叙述中正确的是( )。(分数:60.00)A.计算机病毒只感染可执行文件B.计算机病毒只感染文本文件C.计算机病毒只能通过软件复制的方式进行传播D.计算机病毒可以通过读写磁盘或网络等方式进行传播21.在长度为 64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为【 】。(分数:60.00)A.63B.64C.6D.722.有以下程序: #include stdlib.h struct

8、 NODE int num; struct NODE *next; main( ) struct NODE *p,*q,*r; int sum=0; p=(struct NODE *)malloc(sizeof(struct NODE); q=(struct NODE *)malloc(sizeof(struct NODE); r=(struct NODE *)malloc(sizeof(struct NODE); p-num=1;q-num=2;r-num=3; p-next=q;q-next=r;r-next=NULL; sum+=q-next-num;sum+=p-num; printf

9、(“%d/n”,sum); 执行后的输出结果是( )。 (分数:60.00)A.3B.4C.5D.623.有以下程序: main( ) int x =1,3,5,7,2,4,6,0,i,j,k; for(i=0;i3;i+) for (j=2;j=i;j-) if(xj+1xj) k=xj;xj=xj+1;xj+1=k; for(i=0;i3;i+) for(j=4;j7-i;j+) if(xj+1xj) k=xj;xj=xj+1;xj+1=k; for (i=0;i3;i+) if(xjxj+1) k=xj;xj=xj+1;xj+1=k; for (i=0;i8;i+) printf(“%d

10、“,xi); printf(“/n“); 程序运行后的输出结果是( )。 (分数:60.00)A.75310246B.01234567C.76310462D.1357024624.有以下程序: #includestdi0.h main( ) FILE *fp; int i=20,j=50,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); f

11、close(fp); 程序运行后的输出结果是( )。 (分数:60.00)A.20 30B.20 50C.30 50D.30 2025.有以下程序: main() int a3,3*p,i; p=i+)ptr=a+i;scanf(“%d“,ptr);pb+; for(i=0;i3;i+) for(j=0;j2;j+)printf(“%2d“,aij); printf(“/n“); 若运行时输入:123回车,则输出结果是【 】。(分数:60.00)A.产生错误信息B.10C.12D.1033.两个或两个以上模块之间关联的紧密程度称为【 】。(分数:60.00)A.耦合度B.内聚度C.复杂度D.数

12、据传输特性34.以下非法的赋值语句是( )。(分数:60.00)A.n=(i=2,+i);B.j+;C.+(i+1);D.x=j0;35.用 C 语言编写的代码程序( )。(分数:60.00)A.可立即执行B.是一个源程序C.经过编译即可执行D.经过编译解释才能执行36.以下程序中函数 f 的功能是:当 flag 为 1 时,进行由小到大排序;当 flag 为 0 时,进行由大到小排序。void f(int b,iIlt n,int flag) int i,j,t; for(i=0;ibj:biA.1,2,3,4,5,6,7,8,9,10,B.3,4,5,6,7,2,1,8,9,10,C.5,

13、4,3,2,1,6,7,8,9,10,D.10,9,8,7,6,5,4,3,2,1,37.计算机网络的主要特点是( )。(分数:60.00)A.运算速度快B.运算精度高C.资源共享D.人机交互38.有以下程序: int f(int b 4) int i,j,s=0; for(j=0;j2) i=3-j; s+=bij; return s; main( ) int a44=1,2,3,4,0,2,4,5,3,6,9,12,3,2,1,0; printf(“%d/n”,f(a); 执行后的输出结果是( )。 (分数:60.00)A.12B.11C.18D.1639.若有以下程序: main( )

14、int k=2,i=2,m; m=(k+=i*=k);printf(“%d,%d/n“,m,i); 执行后的输出结果是( )。 (分数:60.00)A.8,6B.8,3C.6,4D.7,440.有以下程序 #include void f(char P10,int n)*字符串从小到大排序* char t10;int i,j; for(i=0;iO)strcpy(t,pi);strcpy(pi,pj);strcpy(pj,t); main() char p510=“abc“,“aabdfg“,“abbd“,“dcdbe“,“cd“; f(P,5); printf(“dn“,strlen(p0);

15、 程序运行后的输出结果是【 】。 (分数:60.00)A.2B.4C.6D.341.已定义以下函数: fun(char *p2, char *p1) while(*p2=*p1)!=/0) p1+;p2+; 此函数的功能是( )。 (分数:60.00)A.将 p1 所指字符串复制到 p2 所指内存空间B.将 p1 所指字符串的地址赋给指针 p2C.对 p1 和 p2 两个指针所指字符串进行比较D.检查 p1 和 p2 两个指针所指字符串中是否有/042.有以下程序: point(char *p)p+=3; main() char b4=a,b,c,d,*p=b; point(p);printf

16、(“%c/n“,*p); 程序运行后的输出结果是【 】。 (分数:60.00)A.aB.bC.cD.d43.若有说明语句:double*p,a;则能通过 scanf 语句正确给输入项读入数据的程序段是【 】。(分数:60.00)A.*P= unsigned char c; ul; ul.c=A; printf(“%c/n“,ul.n); 执行后输出结果是( )。 (分数:60.00)A.产生语法错B.随机值C.AD.6547.以下选项中不能作为合法常量的是【 】。(分数:60.00)A.1.234e04B.1.234e0.4C.1.234e+4D.1.234e048.下列叙述中正确的是【 】。

17、(分数:60.00)A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指执行算法所需要的计算工作量C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关49.在 Windows 环境下,若要将整个屏幕上显示的内容存入剪贴板,可以按( )。(分数:60.00)A.Ctrl+Printscreen 键B.Alt+Printscreen 键C.Shift+Printscreen 键D.Printscreen 键50.在 E-R 图中,用来表示实体之间联系的图形是【 】。(分数:60.00)A.矩形B.椭圆形C.菱形D.平行四边形二、填空题(每空

18、2 分,共 40 分)(总题数:20,分数:40.00)51.以下程序的输出结果是 1。 int fun(int *x,int n) if(n=0) return x0; else return x0+fun(x+1,n-1); main2 int a=1,2,3,4,5,6,7;printf(“dn“,fun(a,3); (分数:2.00)填空项 1:_52.Internet 的信息服务方式分为基本服务和扩展服务,电子邮件属于 1。(分数:2.00)填空项 1:_53.计算机软件分为系统软件和应用软件,UNIX 系统属于 1。(分数:2.00)填空项 1:_54.函数 YangHui 的功能

19、是把杨辉三角形的数据赋给二维数组的下半三角,形式如下 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1. 其构成规律是: (1.)第 0 列元素和主对角线元素均为 1 (2.)其余元素为其左上方和正上方元素之和 (3.)数据的个数每行递增 1 请将程序补充完整。 #define N 6 void yanghui(int xNN) int i,j; x00=1; for(i=1;iN;i+) xi0= 1=1; for(j=1;ji;j+) xij= 2; (分数:2.00)填空项 1:_55.假设在当前盘当前目录下有一个可执行程序 USER.EXE。现要执行该程序,并要求在执行过程中

20、将显示输出的结果信息存入当前盘当前目录的文件 OUT.DAT 中,则完整的 DOS 命令为 1。(分数:2.00)填空项 1:_56.从 Windows 环境进入 MS-DOS 方式后,返回 Windows 环境的 DOS 命令为 1。(分数:2.00)填空项 1:_57.计算机网络分为广域网和局域网,因特网属于 1。(分数:2.00)填空项 1:_58.下面程序的功能是建立一个有 3 个结点的单循环链表,然后求各个结点数值域 data 中数据的和,请填空。(分数:2.00)填空项 1:_59.以下程序运行后输入:3,abcde,则输出结果是 1 #include string.h move(

21、char *str, int n) char temp; int i; temp=strn-1; for(i=n-1;i0;i-) stri=stri-1; str0=temp; main( ) char s50; int n, i, z; scanf(“%d,%s“, z=strlen(s); for(i=1; i=n; i+ move(s, z); printf(“%s/n“,s); (分数:2.00)填空项 1:_60.设有以下定义 stuct ss int info; struct ss *link;x,y,z; 且已建立如下图所示链表结构: (分数:2.00)填空项 1:_61.支持

22、 Internet 基本服务的协议是 1。(分数:2.00)填空项 1:_62.以下程序运行后的输出结果是 1。 main( ) int i,m=0,n=0,k=0; for(i=9; i=11;i+) switch(i/10) case 0: m+;n+;break; case 10: n+; break; default: k+;n+; printf(“%d %d %d/n“,m,n,k); (分数:2.00)填空项 1:_63.设有定义:float x=123.4567;,则执行以下语句后的输出结果是 1。prinff(“fn“,(int)(x*100+0.5)100.0);(分数:2.

23、00)填空项 1:_64.问题处理方案的正确而完整的描述称为 1。(分数:2.00)填空项 1:_65.下面程序的功能是:将 N 行 N 列二维数组中每一行的元素进行排序,第 0 行从小到大排序,第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如: (分数:2.00)填空项 1:_填空项 1:_66.以下程序用于判断 a、b、c 能否构成三角形,若能,输出 YES,否则输出 NO。当给 a、b、c 输入三角形三条边长时,确定 a、b、c 能构成三角形的条件是需同时满足三个条件:a+bc,a+cb,b+ca。请填空。 main1 float a,b,C; scanf(“

24、fff“, int w; long c; 若各变量已正确赋值,则下列选项中正确的表达式是( )。 (分数:60.00)A.a=a+b=b+B.w%(int)a+b)C.(c+w)%(int)a D.w=a=b;解析:6.在 Internet 中,用于在计算机之间传输文件的协议是( )。(分数:60.00)A.TELNETB.BBSC.FTP D.WWW解析:7.对如下二叉树,进行后序遍历的结果为【 】。 (分数:60.00)A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA 解析:后序遍历可以描述为:若二叉树为 空,则空操作;否则:后序遍历左子树;后序遍历右 子树;访问根结点。对

25、于后序遍历,第一个访问的结点一定是最左下的结点,最后一个访问的结点一定是根结点,如果知道这个小技巧,可以迅速确定本题的答案为选项 D)。8.有以下程序 void swap(char*X,char,*y) char t; t=*X;*X=* Y;*Y=t; main() char*s1=“abc“,*s2=“123“; swap(s1,s2);printf(“S,sn“,s1,s2); 程序执行后的输出结果是【 】。 (分数:60.00)A.123,abcB.abc,123C.1bc,a23 D.321,cba解析:这是一个转换程序:低字节相互转换,高字节不变。“abc“的 ab 和“123“的

26、 12 相互转化。9.若有定义语句:int k23,* pk3;,则以下语句中正确的是【 】。(分数:60.00)A.pk=k;B.pk 0=i+) s+=aai1; printf(“%d/n“,s); 程序运行后的输出结果是( )。 (分数:60.00)A.11B.19 C.13D.20解析:11.设有如下说明 typedef struct int n; char c; double x;STD; 则以下选项中 ,能正确定义结构体数组并赋初值的语句是( )。 (分数:60.00)A.STD tt2=1,A,62,2,B,75; B.STD tt2=1,“A“,62,2,“,75;C.stru

27、ct tt2=1,A,2,B;D.struct tt2=1,“A“,62.5,2,“B“,75.0;解析:12.以下选项中,值为 1 的表达式是【 】。(分数:60.00)A.1-0B.1-0 C.1-0D.0-0解析:本题主要考查了字符参与的数学运算,首先要将字符转换为对应的 ASCII 码值。我们知道,字符1所对应的 ASCII 码值不是 1,字符0所对应的 ASCII 码值也不是 0,字符0是字符串结束标识符,其对应的 ASCII 码值是 0。13.在 16 位编译系统上,若有定义 int a=10,20,30,*P= m-=n; printf(“%X/n“,m); 执行后输出结果是(

28、)。 (分数:60.00)A.0X0B.0x0C.0 D.0XABC解析:15.有以下程序 void f(int*q) int i=0; for(;iA.2,2,3,4,5,B.6,2,3,4,5, C.1,2,3,4,5,D.2,3,4,5,6,解析:调用函数 f()时,将数组 a 的地址传递给了指针 q,此时 q 指向的就是数组 a 的第一个元素 a0。在5 次循环过程中,q 始终指向 a0,因此 a0的值增加了 5。最后的输出结果为“6,2,3,4,5“。16.若有以下程序段(n 所赋的是八进制数) int m=32767,n=032767; printf(“%d,%o/n“,m,n);

29、 执行后输出结果是( )。 (分数:60.00)A.32767,32767 B.32767,032767C.32767,77777D.32767,077777解析:17.有以下程序 main() union char ch2; int d; S; S.d=0x4321; printf(“x,xn“,S.ch0,S.ch1); 在 16 位编译系统上,程序执行后的输出结果是【 】。 (分数:60.00)A.21,43 B.43,21C.43D.21,00解析:因为联合的两个变量共用一段内存,ch0占用低字节,ch1占用高字节,所以在读它们的时候还是原来的数据,没发生改变。18.有以下程序: ma

30、in( ) int i,n=0; for(i=2;iA.n=5B.n=2C.n=3D.n=4 解析:19.以下不能正确定义二维数组的选项是( )。(分数:60.00)A.int a22=1,2;B.int a 2=1,2,3,4;C.int a22=1,2,3;D.int a2 =1,2,3,4; 解析:20.下列叙述中正确的是( )。(分数:60.00)A.计算机病毒只感染可执行文件B.计算机病毒只感染文本文件C.计算机病毒只能通过软件复制的方式进行传播D.计算机病毒可以通过读写磁盘或网络等方式进行传播 解析:21.在长度为 64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为【 】

31、。(分数:60.00)A.63B.64 C.6D.7解析:顺序查找是从线性表的第一个元素开始依次向后查找,如果线性表中的第一个元素就是要查找的元素,则只需要做一次比较就查找成功;但如果要查找的元素是线性表中的最后一个元素,或者要查找元素不在线性表中,则需要与线性表中所有元素进行比较,这是顺序查找的最坏情况,比较次数为线性表的长度。22.有以下程序: #include stdlib.h struct NODE int num; struct NODE *next; main( ) struct NODE *p,*q,*r; int sum=0; p=(struct NODE *)malloc(s

32、izeof(struct NODE); q=(struct NODE *)malloc(sizeof(struct NODE); r=(struct NODE *)malloc(sizeof(struct NODE); p-num=1;q-num=2;r-num=3; p-next=q;q-next=r;r-next=NULL; sum+=q-next-num;sum+=p-num; printf(“%d/n”,sum); 执行后的输出结果是( )。 (分数:60.00)A.3B.4 C.5D.6解析:23.有以下程序: main( ) int x =1,3,5,7,2,4,6,0,i,j,k

33、; for(i=0;i3;i+) for (j=2;j=i;j-) if(xj+1xj) k=xj;xj=xj+1;xj+1=k; for(i=0;i3;i+) for(j=4;j7-i;j+) if(xj+1xj) k=xj;xj=xj+1;xj+1=k; for (i=0;i3;i+) if(xjxj+1) k=xj;xj=xj+1;xj+1=k; for (i=0;i8;i+) printf(“%d“,xi); printf(“/n“); 程序运行后的输出结果是( )。 (分数:60.00)A.75310246 B.01234567C.76310462D.13570246解析:24.有以

34、下程序: #includestdi0.h main( ) FILE *fp; int i=20,j=50,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); 程序运行后的输出结果是( )。 (分数:60.00)A.20 30B.20 50 C.30 50D.30 20解析:本题首先通过函数 fprintf( )将变量

35、i,j 的值输出到已打开的 d1.dat 文件中,再由函数 fscanf( ) 从 d1.dat 中读取 i,j 的值到 k,n。25.有以下程序: main() int a3,3*p,i; p=i+)ptr=a+i;scanf(“%d“,ptr);pb+; for(i=0;i3;i+) for(j=0;j2;j+)printf(“%2d“,aij); printf(“/n“); 若运行时输入:123回车,则输出结果是【 】。(分数:60.00)A.产生错误信息B.10 C.12D.10解析:二维数组 a,通过 a32=0将数组中的各个元素初始化为 0,指针变量 ptr,指向包含 2 个元素的

36、一维数组。a00=1,a10=2,故本题的输出选 B。 33.两个或两个以上模块之间关联的紧密程度称为【 】。(分数:60.00)A.耦合度 B.内聚度C.复杂度D.数据传输特性解析:模块的独立程度可以由两个定性标准度量:内聚性和耦合性。耦合衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚衡量一个模块内部各个元素彼此结合的紧密程度。一般来说,要求模块之间的耦合尽可能地弱,而要求模块的内聚程度尽可能的高。34.以下非法的赋值语句是( )。(分数:60.00)A.n=(i=2,+i);B.j+;C.+(i+1); D.x=j0;解析:自加或自减运算的操作数不能是表达式。35.用 C 语言编写的代

37、码程序( )。(分数:60.00)A.可立即执行B.是一个源程序 C.经过编译即可执行D.经过编译解释才能执行解析:36.以下程序中函数 f 的功能是:当 flag 为 1 时,进行由小到大排序;当 flag 为 0 时,进行由大到小排序。void f(int b,iIlt n,int flag) int i,j,t; for(i=0;ibj:biA.1,2,3,4,5,6,7,8,9,10,B.3,4,5,6,7,2,1,8,9,10, C.5,4,3,2,1,6,7,8,9,10,D.10,9,8,7,6,5,4,3,2,1,解析:在 main()中,“f( for(j=0;j2) i=3

38、-j; s+=bij; return s; main( ) int a44=1,2,3,4,0,2,4,5,3,6,9,12,3,2,1,0; printf(“%d/n”,f(a); 执行后的输出结果是( )。 (分数:60.00)A.12B.11C.18D.16 解析:39.若有以下程序: main( ) int k=2,i=2,m; m=(k+=i*=k);printf(“%d,%d/n“,m,i); 执行后的输出结果是( )。 (分数:60.00)A.8,6B.8,3C.6,4 D.7,4解析:40.有以下程序 #include void f(char P10,int n)*字符串从小到

39、大排序* char t10;int i,j; for(i=0;iO)strcpy(t,pi);strcpy(pi,pj);strcpy(pj,t); main() char p510=“abc“,“aabdfg“,“abbd“,“dcdbe“,“cd“; f(P,5); printf(“dn“,strlen(p0); 程序运行后的输出结果是【 】。 (分数:60.00)A.2B.4C.6 D.3解析:本题中函数 f()利用选择法对字符串数组 p 中的字符串按从小到大排序,字符串比较的方法是:依次对 S1 和 s2 所指字符串对应位置上的字符两两进行比较,当出现第一对不相同的字符时,即由这两个字

40、符(ASCII 码值)决定所在串的大小,因此最后在 p0中存储的是最小的字符串是“aabdfg“。最后用 strlen()函数求得该字符串的长度为 6。41.已定义以下函数: fun(char *p2, char *p1) while(*p2=*p1)!=/0) p1+;p2+; 此函数的功能是( )。 (分数:60.00)A.将 p1 所指字符串复制到 p2 所指内存空间 B.将 p1 所指字符串的地址赋给指针 p2C.对 p1 和 p2 两个指针所指字符串进行比较D.检查 p1 和 p2 两个指针所指字符串中是否有/0解析:42.有以下程序: point(char *p)p+=3; mai

41、n() char b4=a,b,c,d,*p=b; point(p);printf(“%c/n“,*p); 程序运行后的输出结果是【 】。 (分数:60.00)A.a B.bC.cD.d解析:在 C 语言中,函数的参数传递方式采用按值传递,因此不能通过调用函数的方式来改变指针本身的值,只能改变指针所指变量的值。 43.若有说明语句:double*p,a;则能通过 scanf 语句正确给输入项读入数据的程序段是【 】。(分数:60.00)A.*P= unsigned char c; ul; ul.c=A; printf(“%c/n“,ul.n); 执行后输出结果是( )。 (分数:60.00)A

42、.产生语法错B.随机值C.A D.65解析:47.以下选项中不能作为合法常量的是【 】。(分数:60.00)A.1.234e04B.1.234e0.4 C.1.234e+4D.1.234e0解析:指数形式的实型常量要求字母 e(或 E)之前必需有数字,且 e 后面的指数必须为整数,所以本题中选项 B 非法。 48.下列叙述中正确的是【 】。(分数:60.00)A.算法的效率只与问题的规模有关,而与数据的存储结构无关B.算法的时间复杂度是指执行算法所需要的计算工作量 C.数据的逻辑结构与存储结构是一一对应的D.算法的时间复杂度与空间复杂度一定相关解析:根据时间复杂度和空间复杂度的定义可知,算法的

43、时间复杂度与空间复杂度并不相关。数据的逻辑结构就是数据元素之间的逻辑关系,它是从逻辑上描述数据元素之间关系的,是独立于计算机中的,数据的存储结构是研究数据元素和数据元素之间的关系如何在计算机中表示,它们并非一一对应。算法的执行效率不仅与问题的规模有关,还与数据的存储结构有关。49.在 Windows 环境下,若要将整个屏幕上显示的内容存入剪贴板,可以按( )。(分数:60.00)A.Ctrl+Printscreen 键B.Alt+Printscreen 键C.Shift+Printscreen 键D.Printscreen 键 解析:50.在 E-R 图中,用来表示实体之间联系的图形是【 】。

44、(分数:60.00)A.矩形B.椭圆形C.菱形 D.平行四边形解析:E-R 模型可用 E-R 图来表示,它具有 3 个要素:实体(型)用矩形框表示,框内为实体名称。属性用椭圆型来表示,并用线与实体连接。属性较多时也可以将实体及其属性单独列表。实体间的联系用菱形框表示。用线将菱形框与实体相连,并在线上标注联系的类型。二、填空题(每空 2 分,共 40 分)(总题数:20,分数:40.00)51.以下程序的输出结果是 1。 int fun(int *x,int n) if(n=0) return x0; else return x0+fun(x+1,n-1); main2 int a=1,2,3,4,5,6,7;printf(“dn“,fun(a,3); (分数:2.00)填空项 1:_ (正确答案:10)解析:本题考查的是函数的递归调用。在调用一个函数的过程中又直接或间接的调用该函数本身。第一次调用时,指针 x 指向的是 a0,n 的值为 3,每调用一次 n 自减 1,x 加 1,指向数组 a 中的下一个元素,当 n为 0 时函数开始返回,最后的返回值等于 a0+a1+a2+a3=10。52.Internet 的信息服务方式分为基本服务和扩展服务,电子邮件属于 1。(分数:2.00)填空项 1:_

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1