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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、计算机二级(C)36 及答案解析(总分:3040.00,做题时间:120 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:50,分数:3000.00)1.以下不合法的字符常量是【 】。(分数:60.00)A.018B.C.D.xcc2.有以下程序: main( ) char str 10=“China“,“Beijing“,*p=str; printf(“%s/n“,p+10); 程序运行后的输出结果是( )。 (分数:60.00)A.ChinaB.BejingC.ngD.ing3.下列程序的输出结果是( )。 main( ) int i,s=0; for(i=1;i10;

2、i+=2) s+=i+1; printf(“%d/n”,s); (分数:60.00)A.自然数 19 的累加和B.自然数 110 的累加和C.自然数 19 中的奇数之和D.自然数 110 中的偶数之和4.与十进制数 511 等值的十六进制数为( )。(分数:60.00)A.1FFB.2FFC.1FED.2FE5.若要说明一个类型名 STP,使得定义语句 STP s;等价于 char *s;,以下选项中正确的是(分数:60.00)A.typedef STP char *s;B.typedef *char STP;C.typedef STP *char;D.typedef char* STP ;6

3、.有以下程序: main( ) int a=3,b=4,c=5,d=2; if(ab) if(bc) printf(“%d“,d+ +1); else printf(“%d“,+d +1); printf(“%d/n“,d); 程序运行后的输出结果是( )。 (分数:60.00)A.2B.3C.43D.447.有以下程序: void swapl(int c0,int c1) int t; t=c00; c00=c10;c10=t; void swap2(int *c0,iht *c1) int t; t=*c0; *c0=*c1; *c1=t; main() int a2=3,5,b2=3,5

4、;swapl(a,a+1); swap2( printf(“%d/n“,x/y 程序运行后的输出结果是( )。 (分数:60.00)A.3B.2C.1D.011.有以下程序 #include main() FILE *fp; int i; char ch=“abcd“,t; fp=fopen(“abc.dat“, “wb+“); for(i=0;iA.dB.cC.bD.a12.以下叙述中正确的是( )。(分数:60.00)A.C 程序中注释部分可以出现在程序中任意合适的地方B.花括号“和“只能作为函数体的定界符C.构成 C 程序的基本单位是函数,所有函数名都可以由用户命名D.分号是 C 语句之

5、间的分隔符,不是语句的一部分13.有以下程序: struct STU char num10; float score3; main( ) struct STU s3=“20021“,90,95,85, “20022“,95,80,75, “20023“,100,95,90 ,*p=s; int i; float sum=0; for(i=0;i3;i+) sum=sum+p-scorei; printf(“%6.2f/n“,sum); 程序运行后的输出结果是( )。(分数:60.00)A.260B.270C.280D.28514.有以下程序: main() char a7=“a0/0a0/0“

6、:int i,j i=sizeof(a);j=strlen(a): printf(“%d%d/n“,i,j); 程序运行后的输出结果是【 】。(分数:60.00)A.22B.76C.72D.6215.下列关于 C 语言数据文件的叙述中正确的是( )。 (分数:60.00)A.文件由 ASCII 码字符序列组成,C 语言只能读写文本文件B.文件由二进制数据序列组成,C 语言只能读写二进制文件C.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件16.以下选项中合法的实型常数是( )。(分数:60.00)A.5E2.0

7、B.E-3C.0.2D.1.3E17.有以下程序: prt(int*m,int n) int i; for(i=0;in;i+)mi)+; main() int a=1,2,3,4,5,i; prt(a,5); for(i=0;i5;i+) printf(“%d,“,ai); 程序运行后的输出结果是【 】。(分数:60.00)A.1,2,3,4,5,B.2,3,4,5,6,C.3,4,5,6,7,D.2,3,4,5,1,18.有以下程序 main( ) int a; char c=10; float f=100.0; double x; a=f/=c*=(x=6.5); printf(“%d

8、%d %3.1f %3.1f/n“,a,c,f,x); 程序运行后的输出结果是( )。 (分数:60.00)A.1 65 1 6.5B.1 65 1.5 6.5C.1 65 1.0 6.5D.2 65 1.5 6.519.Internet 的通信协议是( )。(分数:60.00)A.TCP/IPB.BBSC.WWWD.FTP20.有以下程序 main( ) int i; for(i=0;i3;i+) switch(i) case 1: printf(“%d“,i); case 2: printf(“%d“,i); default: printf(“%d“,i); 执行后输出的结果是( )。 (

9、分数:60.00)A.011122B.012C.012020D.12021.十六进制数 100 转换为十进制数为( )。(分数:60.00)A.256B.512C.1024D.6422.若要求定义具有 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.23.算法具有五个特性,以下选项中不属于算法特性的是【 】。(分数:60.00)A.有穷性B.简洁性C.可行性D.确定性24.下列定义变量的语句中错误的是【 】。(分数

10、:60.00)A.int_int;B.double int_;C.char For;D.float US$;25.下列对于线性链表的描述中正确的是【 】。(分数:60.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的26.有以下程序: void f(int v , int w) int t; t=v;v=w;w=t; main( ) int x=1,y=3,z=2; if(xy) f(x,y); else if(yz) f

11、(y,z); else f(x,z); printf(“%d,%d,%d/n”,x,y,z); 执行后输出结果是( )。 (分数:60.00)A.1,2,3B.3,1,2C.1,3,2D.2,3,127.有以下程序 int fun(int n) if(n=1)return 1; else return(n+fun(n-1); main() int x; scanf(“d“, for(i=m;i=n;i-)ai+1=ai main() int i, aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;i5;i+)printf(“%d“,ai); 程序运行后的

12、输出结果是【 】。(分数:60.00)A.10234B.12344C.12334D.1223429.有以下程序: float f1(float n) return n*n; float f2(float n) return 2*n; main() float(*p1)(float),(*p2)(float),(*t)(float),y1,y2; p1:f1; p2=f2; y1=p2(p1(2.0); t=p1; p1=p2; p2=t; y2=p2(p1(2.0); printf(“%3.0f,%3.0f/n“,y1,y2); 程序运行后的输出结果是【 】。 (分数:60.00)A.8, 1

13、6B.8, 8C.16, 16D.4, 830.若变量 x、y 已正确定义并赋值,以下符合 C 语言语法的表达式是【 】。(分数:60.00)A.+x,y=x-B.x+l=yC.x=x+10=x+yD.double(x)1031.在 16 位编译系统上,若有定义 int a=10,20,30,*P= main( ) int s8=1,3,5,2,4,6,i,d=0; for (i=0;f(si);i+) d+=si; printf(“%d/n“,d); 程序运行后的输出结果是( )。 (分数:60.00)A.9B.11C.19D.2134.有以下程序 int *f(int *x,int *y)

14、 if(*x*y) return x; else return y; main( ) int a=7,b=8,*p,*q,*r; p= q= r=f(p,q); printf(“%d,%d,%d/n“,*p,*q,*r); 执行后输出结果是( )。 (分数:60.00)A.7,8,8B.7,8,7C.8,7,7D.8,7,835.以下程序中函数 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,

15、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,36.下列叙述中正确的是( )。(分数:60.00)A.计算机病毒只感染可执行文件B.计算机病毒只感染文本文件C.计算机病毒只能通过软件复制的方式进行传播D.计算机病毒可以通过网络或读写磁盘方式进行传播37.下列叙述中错误的是【 】。(分数:60.00)A.在数据库系统中,数据的物理结构必须与逻辑结构一致B.数据库技术的根本目标是要解决数据的共享问题C.数据库设计是指在已有数据库管理系统的基础上建立数据库D.数据库系统需要操作系统的支持38.已定义以下

16、函数: fun(char *p2, char *p1) while(*p2=*p1)!=/0) p1+;p2+; 此函数的功能是( )。 (分数:60.00)A.将 p1 所指字符串复制到 p2 所指内存空间B.将 p1 所指字符串的地址赋给指针 p2C.对 p1 和 p2 两个指针所指字符串进行比较D.检查 p1 和 p2 两个指针所指字符串中是否有/039.设有定义 int k=1,m=2;float f=7;,则以下选项中错误的表达式是【 】。(分数:60.00)A.k=k=kB.k+C.k%int(f)D.k=fm40.若有以下程序段(n 所赋的是八进制数) int m=32767,n

17、=032767; printf(“%d,%o/n“,m,n); 执行后输出结果是( )。 (分数:60.00)A.32767,32767B.32767,032767C.32767,77777D.32767,07777741.以下程序企图把从终端输入的字符输出到名为 abc.txt 的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。 #include stdio.h main( ) FILE *fout; char ch; fout=fopen(abc.txt,w); ch=fgetc(stdin); while(ch!=#) fputc(ch,fout); ch =fgetc(

18、stdin); fclose(fout); 出错的原因是( )。 (分数:60.00)A.函数 fopen 调用形式有误B.输入文件没有关闭C.函数 fgetc 调用形式有误D.文件指针 stdin 没有定义42.有以下程序 main( ) int k=4,n=0; for( ; nk ; ) n+; if(n%3!=0) continue; k-; printf(“%d,%d/n“,k,n); 程序运行后的输出结果是( )。 (分数:60.00)A.1,1B.2,2C.3,3D.4,443.以下数组定义中错误的是【 】。(分数:60.00)A.int x 3:0;B.int x23=l,2,

19、3,4,5,6;C.int X 3=l,2,3,4,5,6;D.int x23=l,2,3,4,5,6;44.在 Windows 环境下,下列叙述中正确的是( )。(分数:60.00)A.在“开始“菜单中可以增加项目,也可以删除项目B.在“开始“菜单中不能增加项目,也不能删除项目C.在“开始“菜单中可以增加项目,但不能删除项目D.在“开始“菜单中不能增加项目,但可以删除项目45.有以下程序 main( ) union unsigned int n; unsigned char c; ul; ul.c=A; printf(“%c/n“,ul.n); 执行后输出结果是( )。 (分数:60.00)

20、A.产生语法错B.随机值C.AD.6546. 有以下程序 main( ) int i=10,j=1; printf(“%d,%d/n“,i-,+j); 执行后输出的结果是( )。 (分数:60.00)A.9,2B.10,2C.9,1D.10,147.从工程管理角度,软件设计一般分为两步完成,它们是【 】。(分数:60.00)A.概要设计与详细设计B.数据设计与接口设计C.软件结构设计与数据设计D.过程设计与数据设计48.有以下程序 main() int i , t3=9,8,7,6,5,4,3,2,1; for(i=0;iA.7 5 3B.3 5 7C.3 6 9D.7 5 149.有以下程序

21、 void fun(char *a, char *b) a=b; (*a)+; main( ) char c1=A,c2=a,*p1,*p2; p1= p2= fun(p1,p2); printf(“%c%c/n“,c1,c2); 程序运行后的输出结果是( )。 (分数:60.00)A.AbB.aaC.AaD.Bb50.有以下程序: #include string.h main(int argc ,char *argv ) int i,len=0; for(i=1;iargc;i+=2) len+=strlen(argvi); printf(“5d/n”,len); 经编译链接后生成的可执行文

22、件是 ex.exe,若运行时输入以下带参数的命令行 ex abcd efg h3 k44 执行后输出结果是( )。 (分数:60.00)A.14B.12C.8D.6二、填空题(每空 2 分,共 40 分)(总题数:20,分数:40.00)51.以下程序运行后的输出结果是 1。 struct NODE int num;struct NODE *next; ; main2 struct NODE s3=1,/0,2,/0,3,0,*p,*q,*r; int sum=0; s0.next=s+1;s1.next=s+2;s2.next=s; p=s; q=p-next; r=q-next; sum+

23、=q-next-num; sum+=r-next-next-num; printf(“%d/n“,sum); (分数:2.00)填空项 1:_52.以下程序运行后的输出结果是 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:_53.以下程序用于判断 a、b、c 能否构成三角形,若能,输出 YES,否则输出 NO。当给 a、b

24、、c 输入三角形三条边长时,确定 a、b、c 能构成三角形的条件是需同时满足三个条件:a+bc,a+cb,b+ca。请填空。 main1 float a,b,C; scanf(“fff“, switch(x) case 1:switch(y) case 0:a+; break; case 1:b+; break; case 2:a+;b+; break; printf(“%d %d/n“,a,b); (分数:2.00)填空项 1:_55.下面程序和运行运行结果是 1。 typedef union student char name 10; long sno; char sex; float s

25、core 4; STU; main ( ) STU a5; prinff( “% d/n“, sizeof(a) ); (分数:2.00)填空项 1:_56.下列程序的运行结果是: 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:_57.以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 main1 int t=0,s=0,i; for(i=1;i

26、=5;i+)t=i+ 2; s=s+t; printf(“s=%d/n“,s); (分数:2.00)填空项 1:_58.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 1。(分数:2.00)填空项 1:_59.设有定义:int n,* K=n;以下语句将利用指针变量 k 读写变量 n 中的内容,请将语句补充完整。 scanf(“%d“, 1); printf(“%d/n“, 2); (分数:2.00)填空项 1:_60.按“先进后出“原则组织数据的数据结构是 1。(分数:2.00)填空项 1:_61.有以下语句段 int n1=10,n2=20; p

27、rintf(“ 1”,n1.n2); 要求按以下格式输出 n1 和 n2的值,每个输出行从第一列开始,请填空。 n1=10 n2=20 (分数:2.00)填空项 1:_62.在面向对象方法中,类的实例称为 1。(分数:2.00)填空项 1:_63.Windows 窗口一般由标题栏、菜单栏、控制按钮等部分组成。为了移动窗口,则要用鼠标拖动 1。(分数:2.00)填空项 1:_64.设有以下定义 stuct ss int info; struct ss *link;x,y,z; 且已建立如下图所示链表结构: (分数:2.00)填空项 1:_65.程序测试分为静态分析和动态测试。其中 1 是指不执行

28、程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。(分数:2.00)填空项 1:_66.设有定义:float x=123.4567;,则执行以下语句后的输出结果是 1。prinff(“fn“,(int)(x*100+0.5)100.0);(分数:2.00)填空项 1:_67.假设在当前盘的当前目录下有两个文件 A.TXT 和 B.TXT,现在要将文件 B.TXT 合并连接到文件 A.TXT的后面。若使用 COPY 命令,则完整的命令为 1。(分数:2.00)填空项 1:_68.问题处理方案的正确而完整的描述称为 1。(分数:2.00)填空项 1:_69.以下程序中,fun

29、 函数的功能是求 3 行 4 列二维数组每行元素中的最大值。请填空。 void fun(int,int,int(*)4,int*); main1 int a 34=1,2,41,36,28,19,33,15,27,3,27,19,1,b3,i; fun(3,4,a,b,); for(i=0;i3;1+)printf(“%4d“,bi); printf(“/n“); void fun(int m,int n,int ar4,int*br) int i,j,x; for(i=0;im;i+) x=ari0; for(j=0;jn;j+)if(xarij)x=arij; 2=x; (分数:2.00)

30、填空项 1:_70.有以下程序 main( ) int t=1,i=5; for(;i=0;i-) t*=i; printf(“%d/n”,t); 执行后输出结果是 1。 (分数:2.00)填空项 1:_计算机二级(C)36 答案解析(总分:3040.00,做题时间:120 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:50,分数:3000.00)1.以下不合法的字符常量是【 】。(分数:60.00)A.018 B.C.D.xcc解析:字符常量是括在一对单引号内的字符。选项 A)018是八进制字符串格式,所以里面的数不能大于 8。选项 B、C、D 都是转义字符。2.有以下

31、程序: main( ) char str 10=“China“,“Beijing“,*p=str; printf(“%s/n“,p+10); 程序运行后的输出结果是( )。 (分数:60.00)A.ChinaB.Bejing C.ngD.ing解析:3.下列程序的输出结果是( )。 main( ) int i,s=0; for(i=1;i10;i+=2) s+=i+1; printf(“%d/n”,s); (分数:60.00)A.自然数 19 的累加和B.自然数 110 的累加和C.自然数 19 中的奇数之和D.自然数 110 中的偶数之和 解析:4.与十进制数 511 等值的十六进制数为(

32、)。(分数:60.00)A.1FF B.2FFC.1FED.2FE解析:5.若要说明一个类型名 STP,使得定义语句 STP s;等价于 char *s;,以下选项中正确的是(分数:60.00)A.typedef STP char *s;B.typedef *char STP;C.typedef STP *char;D.typedef char* STP ; 解析:6.有以下程序: main( ) int a=3,b=4,c=5,d=2; if(ab) if(bc) printf(“%d“,d+ +1); else printf(“%d“,+d +1); printf(“%d/n“,d); 程

33、序运行后的输出结果是( )。 (分数:60.00)A.2 B.3C.43D.44解析:7.有以下程序: void swapl(int c0,int c1) int t; t=c00; c00=c10;c10=t; void swap2(int *c0,iht *c1) int t; t=*c0; *c0=*c1; *c1=t; main() int a2=3,5,b2=3,5;swapl(a,a+1); swap2( printf(“%d/n“,x/y 程序运行后的输出结果是( )。 (分数:60.00)A.3B.2C.1D.0 解析:11.有以下程序 #include main() FILE

34、 *fp; int i; char ch=“abcd“,t; fp=fopen(“abc.dat“, “wb+“); for(i=0;iA.dB.c C.bD.a解析:fseek(fp,-2L,SEEK_END);语句将位置指针从文件未尾处向后退 2 个字节,此时指向的是字符c,语句 fread( float sum=0; for(i=0;i3;i+) sum=sum+p-scorei; printf(“%6.2f/n“,sum); 程序运行后的输出结果是( )。(分数:60.00)A.260B.270 C.280D.285解析:给结构体数组赋韧值时,由于数组中的每个元素都是一个结构体,因此要

35、将其成员的值依次放在一对 花括号中,以便区分各元素。s0=“20021“,90,95,85 ,s1= “20022,95,80,75 ,s2:“20023“, 100,95,90 。14.有以下程序: main() char a7=“a0/0a0/0“:int i,j i=sizeof(a);j=strlen(a): printf(“%d%d/n“,i,j); 程序运行后的输出结果是【 】。(分数:60.00)A.22B.76C.72 D.62解析:C 语言中以/0作为字符串的结束符,且 strlen()函数计算的是/0字符前的所有字符的个数。数组定义以后系统就为其分配相应大小的内存空间,而不

36、论其中有没有内容。 15.下列关于 C 语言数据文件的叙述中正确的是( )。 (分数:60.00)A.文件由 ASCII 码字符序列组成,C 语言只能读写文本文件B.文件由二进制数据序列组成,C 语言只能读写二进制文件C.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件D.文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件 解析:16.以下选项中合法的实型常数是( )。(分数:60.00)A.5E2.0B.E-3C.0.2 D.1.3E解析:本题主要考查指数形式的表示方法。C 语言规定字母 e(或 E)之前,必须要有数字,且其后的指 数,也必须为整数。17.有以下程

37、序: prt(int*m,int n) int i; for(i=0;in;i+)mi)+; main() int a=1,2,3,4,5,i; prt(a,5); for(i=0;i5;i+) printf(“%d,“,ai); 程序运行后的输出结果是【 】。(分数:60.00)A.1,2,3,4,5,B.2,3,4,5,6, C.3,4,5,6,7,D.2,3,4,5,1,解析:用数组名作函数实参时,不是把数组的值传递给形参,而是把实参数组的起始地址传递给形参数组,这样两个数组就共同占用同一段内存单元。 18.有以下程序 main( ) int a; char c=10; float f=

38、100.0; double x; a=f/=c*=(x=6.5); printf(“%d %d %3.1f %3.1f/n“,a,c,f,x); 程序运行后的输出结果是( )。 (分数:60.00)A.1 65 1 6.5B.1 65 1.5 6.5 C.1 65 1.0 6.5D.2 65 1.5 6.5解析:19.Internet 的通信协议是( )。(分数:60.00)A.TCP/IP B.BBSC.WWWD.FTP解析:20.有以下程序 main( ) int i; for(i=0;i3;i+) switch(i) case 1: printf(“%d“,i); case 2: pri

39、ntf(“%d“,i); default: printf(“%d“,i); 执行后输出的结果是( )。 (分数:60.00)A.011122 B.012C.012020D.120解析:21.十六进制数 100 转换为十进制数为( )。(分数:60.00)A.256 B.512C.1024D.64解析:22.若要求定义具有 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. 解析:在选项 D)中,n 是一个整型的变量。

40、C 语言规定,在一维数组的定义中,其下标只能是常量表达式,不能包含变量。23.算法具有五个特性,以下选项中不属于算法特性的是【 】。(分数:60.00)A.有穷性B.简洁性 C.可行性D.确定性解析:有穷性、确定性、有零个或多个输入、有一个或多个输出、有效性是算法的基本特性。 24.下列定义变量的语句中错误的是【 】。(分数:60.00)A.int_int;B.double int_;C.char For;D.float US$; 解析:C 语言规定,变量的标识符只能由字母、数字或下划线 3 种字符组成,且第一个字符必须为字母或下划线。在 C 语言中大写字母和小写字母被认为是两个不同的字符。据

41、此规定 A)、B)、C)三个选项是正确的,而 D)选项因为包含有特殊字符$,因而其不是合法的变量名称。25.下列对于线性链表的描述中正确的是【 】。(分数:60.00)A.存储空间不一定是连续,且各元素的存储顺序是任意的B.存储空间不一定是连续,且前件元素一定存储在后件元素的前面C.存储空间必须连续,且前件元素一定存储在后件元素的前面D.存储空间必须连续,且各元素的存储顺序是任意的 解析:在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来来确定的。 26.有以下程序: void f(int v , i

42、nt w) int t; t=v;v=w;w=t; main( ) int x=1,y=3,z=2; if(xy) f(x,y); else if(yz) f(y,z); else f(x,z); printf(“%d,%d,%d/n”,x,y,z); 执行后输出结果是( )。 (分数:60.00)A.1,2,3B.3,1,2C.1,3,2 D.2,3,1解析:27.有以下程序 int fun(int n) if(n=1)return 1; else return(n+fun(n-1); main() int x; scanf(“d“, for(i=m;i=n;i-)ai+1=ai main(

43、) int i, aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;i5;i+)printf(“%d“,ai); 程序运行后的输出结果是【 】。(分数:60.00)A.10234B.12344C.12334 D.12234解析:本题函数 fun 的作用是将指定的数组元素(从下标 n 到下标 m)向后移一位。由函数调用“fun(a,2,9);“可知,函数 fun 用于将 a2到 a9的各元素依次向后移一位,移完后,a 数组中各元素的值分别为1,2,3,4,5,6,7,8,9,10,故输出的前 5 个数组元素为 12334。 29.有以下程序: float

44、f1(float n) return n*n; float f2(float n) return 2*n; main() float(*p1)(float),(*p2)(float),(*t)(float),y1,y2; p1:f1; p2=f2; y1=p2(p1(2.0); t=p1; p1=p2; p2=t; y2=p2(p1(2.0); printf(“%3.0f,%3.0f/n“,y1,y2); 程序运行后的输出结果是【 】。 (分数:60.00)A.8, 16 B.8, 8C.16, 16D.4, 8解析:题中“(*p1)(float)“定义了一个指向函数的指针变量 p1,此函数的

45、返回值是 float 类型。在 main函数中,使得 p1 指向了函数 f1,P2 指向了函数缀。语句“y1=p2(p1(2.0);“先调用了 p1 函数,将其返回值4.000000 传递给了 f2 的形参 n,并使其函数返回值 8.000000 赋值给 y1。然后在 main 函数中交换了p1、p2 指针变量的指向,使 p1 指向了函数侵,p2 指向了函数 f1,并先调用函数 f2,得到返回值 4.000000,使其传递给 f1 函数的形参 n,并带回返回值 16.000000 赋值给 y2。在输出 y1、y2 时,各浮点数占 3 列,小数位数为 0,即输出了 8,16。 30.若变量 x、y 已正确定义并赋值,以下符合 C 语言语法的表达式是【 】。(分数:60.00)A.+x,y=x- B.x+l=yC.x=x+10=x+yD.double(x)10解析:选项 A)为 C 语言中

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