欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

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

    • 资源ID:1337703       资源大小:104KB        全文页数:19页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

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

    1、计算机二级(C)14 及答案解析(总分:645.00,做题时间:120 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:40,分数:60.00)1.设有以下语句: typedef struct S int g; char h; T; 则下面叙述中正确的是( )。 (分数:1.50)A.可用 S 定义结构体变量B.可以用 T 定义结构体变量C.S 是 struct 类型的变量D.T 是 struct S 类型的变量2.有以下程序: main( ) unsigned char a,b,c; a=0x3; b=a|0x8; c=b 1; printf(“%d%d/n“,b,c);

    2、 程序运行后的输出结果是( )。 (分数:1.50)A.-11 12B.-19C.12 24D.11 223.以下不能定义为用户标识符的是( )。(分数:1.50)A.scanfB.VoidC._3com_D.int4.下列程序的输出结果是( )。 main( ) int x=0,y=5,z=3; while(z-0则能通过 scanf 语句正确给输入项读入数据的程序段是_。 (分数:1.50)A.*p= scanf(“%lf“,p);B.*p= scanf(“%f“,p);C.p= scanf(“%lf“,*p);D.p= scanf(“%lf“,p);6.已定义 c 为字符型变量,则下列语

    3、句中正确的是( )。(分数:1.50)A.c=97;B.c=“97“;C.c=97;D.c=“a“;7.下列选项中不属于结构化程序设计方法的是_。 (分数:1.50)A.自顶向下B.逐步求精C.模块化D.可复用8.有以下程序: main() int a10=1,2,3,4,5,6,7,8,9,10,*p= printf(“%d/n“,*p+*q); 程序运行后的输出结果是_。 (分数:1.50)A.16B.10C.8D.69.现有以下结构体说明和变量定义,如图所示,指针 p、q、r 分别指向一个链表中连续 的三个结点。 struct node char data; struct node *n

    4、ext; *p,*q,*r; (分数:1.50)A.q-next=r-next; p-next=r;r-next=q;B.p-next=r; q-next=r-next;r-next=q;C.q-next=r-next;r-next=q;p-next=r;D.r-next=q;p-next=r;q-next=r-next;10.在计算机系统中,存储一个汉字的国标码所需要的字节数为( )。(分数:1.50)A.1B.2C.3D.411.有以下程序 void swap(char *x,char *y) char t; t=*x;*x=*y;*y=t; main() char *s1=“abc“,*

    5、s2=“123“; swap(s1,s2); printf(“%s,%s/n“,s1,s2); 程序执行后的输出结果是_。 (分数:1.50)A.123,abcB.abc,123C.1bc,a23D.321,cba12.在 64 位高档微机中,一个字长所占的二进制位数为( )。(分数:1.50)A.8B.16C.32D.6413.有定义语句 int b;char c10;,则正确的输入语句是_。 (分数:1.50)A.scanf(“%d%s“,B.scanf(“%d%s“,C.scanf(“%d%s“,b, ;D.scanf(“%d%s“,b,14.有以下程序 main( ) int m 3=

    6、1,4,7,2,5,8,3,6,9; int i,j,k=2; for(i=0;iA.4 5 6B.2 5 8C.3 6 9D.7 8 915.有以下程序: main( ) int a=15,b=21,m=0; switch(a%3) case 0:m+;break; case l:m+; switch(b%2) default:m+; case 0:m+;break; printf(“%d/n“,m); 程序运行后的输出结果是( )。 (分数:1.50)A.1B.2C.3D.416.有以下函数: fun(char *a,char *b) while(*a!=/0)b+; return(*a-

    7、*b); 该函数的功能是_。(分数:1.50)A.计算 a 和 b 所指字符串的长度之差B.将 b 所指字符串连接到 a 所指字符串中C.将 b 所指字符串连接到 a 所指字符串后面D.比较 a 和 b 所指字符串的大小17.有以下程序 int fun1(double a) return a*=a; int fun2(double x,double y) double a=0,b=0; a=fun1(x);b=fun1(y); return(int)(a+b); main() double w;w=fun2(1.1,2.0); 程序执行后变量 w 中的值是_。 (分数:1.50)A.5.21B

    8、.5C.5D.018. 从 Windows 环境进入 DOS 方式后,返回 Windows 环境的命令为( )。(分数:1.50)A.QUITB.WINC.EXITD.ESC19.有以下程序: main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+A.42B.45C.56D.6020.下列对于软件测试的描述中正确的是_。 (分数:1.50)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则21.有以下程序: main( ) int

    9、 a=7,b=8,*p,*q,*r; p=q= r=p; p=q;q=r; printf(“%d,%d,%d,%d/n“,*p,*q,a,b); 程序运行后的输出结果是( )。 (分数:1.50)A.8,7,8,7B.7,8,7,8C.8,7,7,8D.7,8,8,722.以下能正确定义二维数组的是( )。(分数:1.50)A.int a 3;B.int a 3=22*3;C.int a 3=;D.int a23=1,2,3,4;23.有以下定义和语句: int a32=1,2,3,4,5,6,*p3; p0=a1; 则*p0+1)所代表的数组元素是( )。 (分数:1.50)A.a01B.a

    10、10C.a11D.a1224.在函数调用过程中,如果函数 funA 调用了函数 funB,函数 funB 又调用了函数 funA,则( )。(分数:1.50)A.称为函数的直接递归调用B.称为函数的间接递归调用C.称为函数的循环调用D.C 语言中不允许这样的递归调用25.已定义以下函数 int fun(int *p) return *p; fun 函数返回值是_。 (分数:1.50)A.不确定的值B.一个整数C.形参 p 中存放的值D.形参 p 的地址值26.下列程序的输出结果是( )。 main( ) int i,s=0; for(i=1;i10;i+=2) s+=i+1; printf(“

    11、%d/n”,s); (分数:1.50)A.自然数 19 的累加和B.自然数 110 的累加和C.自然数 19 中的奇数之和D.自然数 110 中的偶数之和27.有以下程序: main() int a33,*p,i; p= for(i=0;iA.12B.123C.234D.34528.下列带有通配符的文件名中,能表示文件“ABC.TXT”的是( )。(分数:1.50)A.*BC.?B.A?.*C.?BC.*D.?.?29.以下程序中函数 reverse( )的功能是将 a 所指数组中的内容进行逆置。 void reverse(int a ,int n) int i,t; for(i=0;in/2

    12、;i+) t=ai;ai=an-1-i;an-1-i=t; main( ) int b10=1,2,3,4,5,6,7,8,9,10;int i,s=0; reverse(b,8); for(i=6;i10;i+)s+=bi; printf(“%d/n“,s); 程序运行后的输出结果是( )。 (分数:1.50)A.22B.10C.34D.3030.有以下定义语句: double a,b; int w; long c; 若各变量已正确赋值,则下列选项中正确的表达式是( )。 (分数:1.50)A.a=a+b=b+B.w%(int)a+b)C.(c+w)%(int)aD.w=a=b;31.有以下

    13、程序 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 132.以下叙述中正确的是_。 (分数:1.50)A.调用 printf 函数时,必须要有输出项B.使用 putchar 函数时,必须在之前包含头文件 stdio.hC.在 C 语言中,整数可以以十二进制、八进制或十六进制的形式输出D.调用 getchar 函数读入字符时,可以从键盘上输入字符所对应的 ASCII 码33.以下与函数 fseek(fp,0L,SEEK_SET)有相同作用的是_。 (分数:1.50)A.feof(fp)B.ftell(

    14、fp)C.fgetc(fp)D.rewind(fp)34.以下叙述中错误的是_。 (分数:1.50)A.C 语言源程序经编译后生成后缀为.obj 的目标程序B.C 程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C.用 C 语言编写的程序称为源程序,它以 ASCII 代码形式存放在一个文本文件中D.C 语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令35.在 DOS 系统中,带有通配符的文件名*.*表示( )。(分数:1.50)A.硬盘上的全部文件B.当前盘当前目录中的全部文件C.当前盘上的全部文件D.根目录中的全部文件36.有以下程序: struc ST

    15、U char name10; int num; ; void f1(struct STU c) struct STU b=“LiSiGuo”,2042; c=b; void f2(struct STU *c) struct STU b=“SunDan”,2044; *c=b; main( ) struct STU a=“YangSan”,2041,b=“WangYin”,2043 ; f1(a);f2( printf(“%d %d/n”,a.num,b.num); 执行后的输出结果是( )。 (分数:1.50)A.2041 2044B.2041 2043C.2042 2044D.2042 20

    16、4337.有以下程序: main( ) int i; for(i=0;iA.22111B.21021C.122D.1238.有以下程序: #include main() char p=a,b,c,q10=a,b,c; printf(“%d %d/n“,strlen(p),strlen(q); 以下叙述中正确的是_。(分数:1.50)A.在给 p 和 q 数组置初值时,系统会自动添加字符串结束符,故输出的长度都为 3B.由于 p 数组中没有字符串结束符,长度不能确定;但 q 数组中字符长度为 3C.由于 q 数组中没有字符串结束符,长度不能确定;但 p 数组中字符长度为 3D.由于 p 和 q

    17、数组中没有字符串结束符,故长度都不能确定39.以下叙述中错误的是_。 (分数:1.50)A.C 程序必须由一个或一个以上的函数组成B.函数调用可以作为一个独立的语句存在C.若函数有返回值,必须通过 return 语句返回D.函数形参的值也可以传回给对应的实参40.两个或两个以上的模块之间关联的紧密程度称为_。 (分数:1.50)A.耦合度B.内聚度C.复杂度D.数据传输特性41.在数据流图(DFD) 中,带有名字的箭头表示( )。(分数:-1.00)A.模块之间的调用关系B.程序的组成成分C.控制程序的执行顺序D.数据的流向42.线性表若采用链式存储结构时,要求内存中可用存储单元的地址( )。

    18、(分数:-1.00)A.必须是连续的B.部分地址必须是连续的C.一定是不连续的D.连续不连续都可以43.数据结构作为计算机的一门学科,主要研究数据的逻辑结构、对各种数据结构进行的运算,以及( )。(分数:-1.00)A.数据的存储结构B.计算方法C.数据映象D.逻辑存储44.在设计程序时,应采纳的原则之一是( )。(分数:-1.00)A.不限制 goto 语句的使用B.减少或取消注解行C.程序越短越好D.程序结构应有助于读者理解45.程序设计语言的基本成分是数据成分、运算成分、控制成分和( )。(分数:-1.00)A.对象成分B.变量成分C.语句成分D.传输成分46.检查软件产品是否符合需求定

    19、义的过程称为( )。(分数:-1.00)A.确认测试B.集成测试C.验证测试D.验收测试47.在计算机中,算法是指( )。(分数:-1.00)A.加工方法B.解题方案的准确而完整的描述C.排序方法D.查询方法48.在数据流图(DFD) 中,带有名字的箭头表示( )。(分数:-1.00)A.模块之间的调用关系B.程序的组成成分C.控制程序的执行顺序D.数据的流向49.最简单的交换排序方法是( )。(分数:-1.00)A.快速排序B.选择排序C.堆排序D.冒泡排序50.在数据库设计中,将 E-R 图转换成关系数据模型的过程属于( )。(分数:-1.00)A.需求分析阶段B.逻辑设计阶段C.概念设计

    20、阶段D.物理设计阶段三、填空题(每空 2 分,共 40 分)(总题数:15,分数:600.00)51.以下程序运行后的输出结果是 1 main( ) int i,j,a 3=1,2,3,4,5,6,7,8,9; for(i=0;i3;i+) for(j=i+1;j3;j+) aji=0; for(i=0;i3;i+) for(j=0;j3;j+) printf(“%d “,aij); printf(“/n“); (分数:40.00)填空项 1:_52.有以下程序 #include stdio.h main( ) char ch1,ch2; int n1,n2; ch1=getchar( );

    21、ch2=getchar( ); n1=ch1-0; n2=n1*10+(ch2-0); printf(“%d/n”,n2); 程序运行时输入:12,执行后输出结果是 1。 (分数:40.00)填空项 1:_53.若 fp 已正确定义为一个文件指针,d1.dat 为二进制文件,请填空,以便为“读”而打开此文件:fp=fopen 1;。 (分数:40.00)填空项 1:_54.以下程序运行后的输出结果是 1 。 ; 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

    22、; p=s; q=p-next; r=q-next; sum+=q-next-num; sum+=r-next-next-num; printf(“%d/n“,sum); (分数:40.00)填空项 1:_55.以下程序运行后的输出结果是 1。 main( ) int a 44=1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18; int i=0,j=0,s=0; while(i+4) if(i=2|i=4) continue; j=0; do s+= aj; j+; while(j4); printf(“%d/n“,s); (分数:40.00)填空项 1:_56.

    23、以下程序的功能是将字符串 s 中的数字字符放入 d 数组中,最后输出 d 中的字符串。例如,输入字符串:abc123edf456gh,执行程序后输出:123456。请填空。 #include stdio.h #include ctype.h main( ) char s80, d80; int i,j; gets(s); for(i=j=0;si!=/0;i+) if( 1) dj=si; j+; dj=/0; puts(d); (分数:40.00)填空项 1:_57.以下程序中函数 fun 的功能是:构成一个如图所示的带头结点的单向链表,在结点 的数据域中放入了具有两个字符的字符串。函数 d

    24、isp 的功能是显示输出该单向链表 中所有结点中的字符串。请填空完成函数 disp。 head ab cd ef /0 #include typedef struct node /*链表结点结构*/ char sub3; struct node *next; Node; Node fun(char s) /* 建立链表*/ void disp(Node *h) Node *p; p=h-next; while(= 1 ) printf(“%s/n“,p-sub);p= 2 ; main3 Node *hd; hd=fun4; disp(hd);printf(“/n“); (分数:40.00)填

    25、空项 1:_58.计算机软件分为系统软件与应用软件,UNIX 属于 1。(分数:40.00)填空项 1:_59.以下程序的运行结果是 1 #include string.h typedef struct student char name10; long sno; float score; STU; main( ) STU a=“zhangsan”,2001,95,b=“Shangxian”,2002,90, c=“Anhua”,2003,95,d,*p= d=a; if(strcmp(a.name,b.name)0) d=b; if(strcmp(c.name,d.name)0) d=c;

    26、printf(“%ld%s/n”,d.sno,p-name); (分数:40.00)填空项 1:_60.程序测试分为静态分析和动态测试。其中 1 是指不执行程序,而只是对程序文 本进行检查,通过阅读和讨论,分析和发现程序中的错误。(分数:40.00)填空项 1:_61.已知字符 A 的 ASCII 代码值为 65,以下程序运行时若从键盘输入 B33,则 输出结果是 1。 #include main2 char a,b; a=getchar3;scanf(“%d“, a=a-A+0;b=b*2; printf(“%c %c/n“,a,b); (分数:40.00)填空项 1:_62.以下函数 ss

    27、trcat1 的功能是实现字符串的连接,即将 t 所指字符串复制到 s 所指 字符串的尾部。例如:s 所指字符串为 abcd,t 所指字符串为 efgh,函数调用后 s 所指字符串为 abcdefgh。请填空。 #include void sstrcat(char *s,char *t) int n; n=strlen(s); while(*(s+n)= 2)s+; t+; (分数:40.00)填空项 1:_63.设有以下定义 stuct ss int info; struct ss *link;x,y,z; 且已建立如下图所示链表结构: (分数:40.00)填空项 1:_64.以下程序运行后

    28、的输出结果是 1。 #define S(x) 4*x*x+1 main2 int i=6,j=8; printf(“%d/n“,S(i+j); (分数:40.00)填空项 1:_65.以下程序运行时,若从键盘输入:10 20 30,输出的结果是 1。 #include main2 int i=0,j=0,k=0; scanf(“%d%*d%d“, printf(“%d%d%d/n“,i,j,k); (分数:40.00)填空项 1:_66.软件结构是以 1 为基础而组成的一种控制层次结构。(分数:-1.00)填空项 1:_67.冒泡排序算法在最好的情况下的元素交换次数为 1。(分数:-1.00)

    29、填空项 1:_68.软件危机出现于 60 年代末,为了解决软件危机,人们提出了 1 的原理来设计软件这就是软件工程诞生的基础。 (分数:-1.00)填空项 1:_69.Jackson 结构化程序设计方法是英国的 M.Jackson 提出的,它是一种面向 1 的设 计方法。 (分数:-1.00)填空项 1:_70.实体之间的联系可以归结为一对一联系、一对多(或多对多)的联系与多对多联系。如果一个学校有许多教师,而一个教师只归属于一个学校,则实体集学校与实体集教师之间的联系属于 1 的联系。(分数:-1.00)填空项 1:_计算机二级(C)14 答案解析(总分:645.00,做题时间:120 分钟

    30、)一、选择题(1-10 题每题 2 分,11-50 题(总题数:40,分数:60.00)1.设有以下语句: typedef struct S int g; char h; T; 则下面叙述中正确的是( )。 (分数:1.50)A.可用 S 定义结构体变量 B.可以用 T 定义结构体变量C.S 是 struct 类型的变量D.T 是 struct S 类型的变量解析:2.有以下程序: main( ) unsigned char a,b,c; a=0x3; b=a|0x8; c=b 1; printf(“%d%d/n“,b,c); 程序运行后的输出结果是( )。 (分数:1.50)A.-11 12

    31、B.-19C.12 24D.11 22 解析:用数字 0 和字母 x(或大写字母 X)开头的数表示十六进制数。3.以下不能定义为用户标识符的是( )。(分数:1.50)A.scanfB.VoidC._3com_D.int 解析:4.下列程序的输出结果是( )。 main( ) int x=0,y=5,z=3; while(z-0则能通过 scanf 语句正确给输入项读入数据的程序段是_。 (分数:1.50)A.*p= scanf(“%lf“,p);B.*p= scanf(“%f“,p);C.p= scanf(“%lf“,*p);D.p= scanf(“%lf“,p); 解析:p=”,它等效于:

    32、int *p; p=, scanf()语句的格式是“scanf(格式控制,地址表列)”, 在选项 D 中,“p”本身就代表着一个地址,故选项 D 正确。6.已定义 c 为字符型变量,则下列语句中正确的是( )。(分数:1.50)A.c=97;B.c=“97“;C.c=97; D.c=“a“;解析:7.下列选项中不属于结构化程序设计方法的是_。 (分数:1.50)A.自顶向下B.逐步求精C.模块化D.可复用 解析: 20 世纪 70 年代以来,提出了许多软件设计方法,主要有逐步求精:对复杂的问题,应设计一些 子目标作过渡,逐步细化;自顶向下:程序设计时应先考虑总体,后考虑细节;先考虑全局目标,后

    33、考 虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化;模 块化:一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为分目标, 再进一步分解为具体的小目标,把每个小目标称为一个模块,而可复用是面向对象程序设计的一个优点。8.有以下程序: main() int a10=1,2,3,4,5,6,7,8,9,10,*p= printf(“%d/n“,*p+*q); 程序运行后的输出结果是_。 (分数:1.50)A.16B.10 C.8D.6解析:数组 a 各元素 a0a9的值依次为 110;在程序的说明部分,指针变量 p 初始化为 str

    34、uct node *next; *p,*q,*r; (分数:1.50)A.q-next=r-next; p-next=r;r-next=q;B.p-next=r; q-next=r-next;r-next=q;C.q-next=r-next;r-next=q;p-next=r;D.r-next=q;p-next=r;q-next=r-next; 解析:选项 D 中首先将 q 赋给 r-next,也就是将结点 q 的地址存放在结点 r 的指针域中;接着将 r 赋给 p-next, 也就是将结点 r 的地址存放在结点 p 的指针域中,此时完成了 q 和 r 所指结点的交换。q-next=r-nex

    35、t 的目 的是想将 q 的指针域指向下一个结点的数据地址,但由于一开始执行了 r-next= q,即已将 r 的指针域中存 放了 q 结点的地址,所以再做操作“q-next=r-next”就相当于将 q 指向了其本身,也就是和下一个结点断开了,所以选项 D 操作错误。10.在计算机系统中,存储一个汉字的国标码所需要的字节数为( )。(分数:1.50)A.1B.2 C.3D.4解析:11.有以下程序 void swap(char *x,char *y) char t; t=*x;*x=*y;*y=t; main() char *s1=“abc“,*s2=“123“; swap(s1,s2); p

    36、rintf(“%s,%s/n“,s1,s2); 程序执行后的输出结果是_。 (分数:1.50)A.123,abcB.abc,123C.1bc,a23 D.321,cba解析:此题考核的知识点是指针变量值的交换。C 语言中,字符串常量在内存中是以字符数组的形式进行 存放的,因此字符指针 x 和 y 指向的是各字符串的首地址,也就是字符串第一个字符的地址,则*x 与*y 交 换的是字符串的第一个字符,即字符“a”与“1”的交换,而字符串中其它字符保持不变,所以答案选 C。12.在 64 位高档微机中,一个字长所占的二进制位数为( )。(分数:1.50)A.8B.16C.32D.64 解析:13.有

    37、定义语句 int b;char c10;,则正确的输入语句是_。 (分数:1.50)A.scanf(“%d%s“,B.scanf(“%d%s“, C.scanf(“%d%s“,b, ;D.scanf(“%d%s“,b,解析:scanf 函数中的“格式控制”后面应当是地址,而不是变量名。对于变量,通过地址运算符“ int i,j,k=2; for(i=0;iA.4 5 6B.2 5 8C.3 6 9 D.7 8 9解析:15.有以下程序: main( ) int a=15,b=21,m=0; switch(a%3) case 0:m+;break; case l:m+; switch(b%2)

    38、default:m+; case 0:m+;break; printf(“%d/n“,m); 程序运行后的输出结果是( )。 (分数:1.50)A.1 B.2C.3D.4解析:16.有以下函数: fun(char *a,char *b) while(*a!=/0)b+; return(*a-*b); 该函数的功能是_。(分数:1.50)A.计算 a 和 b 所指字符串的长度之差B.将 b 所指字符串连接到 a 所指字符串中C.将 b 所指字符串连接到 a 所指字符串后面D.比较 a 和 b 所指字符串的大小 解析:字符串的比较规则是对两个字符串自左至右逐个字符相比(按 ASCII 码值大小比较

    39、),直到出现不同 的字符或遇到/0为止,相等,则返回 0,否则返回第一个不等字符串的 ASCII 码的差值。17.有以下程序 int fun1(double a) return a*=a; int fun2(double x,double y) double a=0,b=0; a=fun1(x);b=fun1(y); return(int)(a+b); main() double w;w=fun2(1.1,2.0); 程序执行后变量 w 中的值是_。 (分数:1.50)A.5.21B.5C.5 D.0解析:此题考核的是数值类型的定义与强制转换。本题在进行调用函数 fun2()时,又对函数 fu

    40、n1()进行了调 用,由于函数 fun1()定义为整型,所以第一次调用 fun1()时返回的值为 1,然后再将 1 赋值给 a,此时由于 a 为 double 型,则系统自动类型转换,将 1 转换成了 1.000000 赋值给了变量 a,以此类推,得 b 的值为 4.000000, 然后通过“return(int)(a+b);”将 a+b 的值强制转换为 int 型 5 返回给主函数,此时又由 w 的类型为 double, 所以返回的整型值 5 又被转换为 double 型。故输出结果为 5.0。18. 从 Windows 环境进入 DOS 方式后,返回 Windows 环境的命令为( )。(

    41、分数:1.50)A.QUITB.WINC.EXIT D.ESC解析:19.有以下程序: main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+A.42B.45 C.56D.60解析:本程序的作用是求除 p0外的其他奇数的和。20.下列对于软件测试的描述中正确的是_。 (分数:1.50)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误 D.软件测试的目的是使程序符合结构化原则解析:关于软件测试的目的,Grenford J.Myers 在 The Art of Softw

    42、are Testing 一书中给出了深刻的阐述,整 体来说,软件测试的目的就是尽可能多地发现程序中的错误。21.有以下程序: main( ) int a=7,b=8,*p,*q,*r; p=q= r=p; p=q;q=r; printf(“%d,%d,%d,%d/n“,*p,*q,a,b); 程序运行后的输出结果是( )。 (分数:1.50)A.8,7,8,7B.7,8,7,8C.8,7,7,8 D.7,8,8,7解析:22.以下能正确定义二维数组的是( )。(分数:1.50)A.int a 3;B.int a 3=22*3; C.int a 3=;D.int a23=1,2,3,4;解析:2

    43、3.有以下定义和语句: int a32=1,2,3,4,5,6,*p3; p0=a1; 则*p0+1)所代表的数组元素是( )。 (分数:1.50)A.a01B.a10C.a11 D.a12解析:24.在函数调用过程中,如果函数 funA 调用了函数 funB,函数 funB 又调用了函数 funA,则( )。(分数:1.50)A.称为函数的直接递归调用B.称为函数的间接递归调用C.称为函数的循环调用D.C 语言中不允许这样的递归调用 解析:25.已定义以下函数 int fun(int *p) return *p; fun 函数返回值是_。 (分数:1.50)A.不确定的值B.一个整数 C.形

    44、参 p 中存放的值D.形参 p 的地址值解析:函数值的类型应当是在定义函数时指定的。在定义函数时对函数值说明的类型一般和 return 语句中 的表达式类型一致,即函数类型决定返回值的类型。此题中定义函数类型为 int 型,故函数返回值也为整型。26.下列程序的输出结果是( )。 main( ) int i,s=0; for(i=1;i10;i+=2) s+=i+1; printf(“%d/n”,s); (分数:1.50)A.自然数 19 的累加和B.自然数 110 的累加和C.自然数 19 中的奇数之和D.自然数 110 中的偶数之和 解析:27.有以下程序: main() int a33,

    45、*p,i; p= for(i=0;iA.12B.123C.234D.345 解析: 本题赋值后,a 的数组元素的值分别为 a00=0, a01=1, a02=2, a10=3, a11=4, a12=5, a20=6, a21=7, a22=8, 故本题输出的值为 345。28.下列带有通配符的文件名中,能表示文件“ABC.TXT”的是( )。(分数:1.50)A.*BC.?B.A?.*C.?BC.* D.?.?解析:29.以下程序中函数 reverse( )的功能是将 a 所指数组中的内容进行逆置。 void reverse(int a ,int n) int i,t; for(i=0;in/2;i+) t=ai;ai=an-1-i;an-1-i=t; main( ) int b10=1,2,3,4,5,6,7,8,9,10;int


    注意事项

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




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

    收起
    展开