【计算机类职业资格】二级C语言笔试-127及答案解析.doc

上传人:eastlab115 文档编号:1325964 上传时间:2019-10-17 格式:DOC 页数:32 大小:96.50KB
下载 相关 举报
【计算机类职业资格】二级C语言笔试-127及答案解析.doc_第1页
第1页 / 共32页
【计算机类职业资格】二级C语言笔试-127及答案解析.doc_第2页
第2页 / 共32页
【计算机类职业资格】二级C语言笔试-127及答案解析.doc_第3页
第3页 / 共32页
【计算机类职业资格】二级C语言笔试-127及答案解析.doc_第4页
第4页 / 共32页
【计算机类职业资格】二级C语言笔试-127及答案解析.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

1、二级 C语言笔试-127 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.以下数据结构属于非线性数据结构的是_。(分数:2.00)A.队列B.线性表C.二叉树D.栈2.库函数 strcpy用以复制字符串,若有以下定义和语句:char str1=“china“,str210,*str3,*str4=“china“;则对库函数 strcpy的正确的调用是_。(分数:2.00)A.strcpy(strl,“people“);B.strcpy(str2,“people“);C.strcpy(str3,“people“);D.strcpy(str4,

2、“people“);3.下面程序的输出结果是_。#define P1(x)printf(x)main()char d=“p“;P1(d) ;P1(“d“);(分数:2.00)A.pdB.d“d“C.“p“dD.“p“d“4.软件生命周期中所花费用最多的阶段是_。(分数:2.00)A.详细设计B.软件编码C.软件测试D.软件维护5.下列选项中不能正确定义结构体的是_。(分数:2.00)A.typedef structB.struct color clint red; int red;int green; int green;int blue; int blue;COLOR; ;COLOR cl;

3、C.struct colorD.structint red; int red;int green; int green;int blue; int blue;cl; cl;6.以下概念中,不属于面向对象方法的是_。(分数:2.00)A.对象、消息B.继承、多态C.类、封装D.过程调用7.设有以下语句char a=3,b=6,c;c=ab2;则 c的二进制值是_。(分数:2.00)A.00011011B.00010100C.00011100D.000110008.能正确表示 a和 b同时为正或同时为负的逻辑表达式是_。(分数:2.00)A.(a=0|b=0)后的输出结果为_。(分数:2.00)A

4、.5B.7C.12D.1411.下面程序的输出结果是_。union unint a4;long b;char c6;main()union un u;printf(“%d%d“,sizeof(u),sizeof(u(分数:1.00)A.);A) 82B.88C.188D.18212.数据库系统的核心是_。(分数:1.00)A.数据模型B.DBMSC.软件工具D.数据库13.以下说法中正确的是_。(分数:1.00)A.C语言程序总是从第一个函数开始执行B.在 C语言程序中,要调用函数必须在 main()函数中定义C.C语言程序总是从 main()函数开始执行D.C语言程序中的 main()函数必

5、须放在程序的开始部分14.以下程序的输出结果是_。main()int i,x33=9,8,7,6,5,4,3,2,1,*p=i4;i+=2)printf(“%d“,pi);(分数:1.00)A.5 2B.5 1C.5 3D.9 715.以下程序的输出结果是_。main()int w=5;fun(w);printf(“/n“);fun(int k)if(k0) fun(k-1);printf(“%d“,k);(分数:1.00)A.5 4 3 2 1B.0 l 2 3 4 5C.1 2 3 4 5D.5 4 3 2 1 016.设有如下定义struct sschar name 10;int age

6、;char sex;std3,*p=std;下列各输入语句中错误的是_。(分数:1.00)A.scanf(“%d“,(分数:1.00)A.2,0B.5,0C.5,5D.2,518.在一棵二叉树上第 8层的结点数最多是_。(分数:1.00)A.8B.16C.128D.25619.下面叙述正确的是_。(分数:1.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.算法的时间复杂度是指执行算法程序所需要的时间20.在 C语言中,不正确的 int类型的常数是_。(分数:1.00)A.32768B.0

7、C.037D.0xAF21.若已定义:int a9,*p=a;并在以后的语句中未改变 p的值,不能表示 a1地址的表达式是 _。(分数:1.00)A.p+1B.a+1C.a+D.+p22.请读程序:#includestdio.hmain()int a,b;for(a=1,b=1;a=100:a+)if(b=20)break;if(b%31”b+=3;continue;b=5;printf(“%d/n“,(分数:1.00)A.;上面程序的输出结果是_。A) 7B.8C.9D.1023.C语言中下列叙述正确的是_。(分数:1.00)A.不能使用 dowhile 语句构成的循环B.dowhile 语

8、句构成的循环,必须用 break语句才能退出C.dowhile 语句构成的循环,当 while语句中的表达式值为非零时结束循环D.dowhile 语句构成的循环,当 while语句中的表达式值为零时结束循环24.以下程序输出的结果是_。main()int a=65535;printf(“%d%u“,a,(分数:1.00)A.;A) -1-1B.65535 65535C.-1 65535D.65535-125.下面描述中,不符合结构化程序计风格的是_。(分数:1.00)A.使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B.自顶向下C.注重提高程序的执行效率D.限制使用 goto语

9、句26.以下程序的输出结果是_。#includestdio.hmain()int i;for(i=1;i5;i+)if(i%2)printf(“*“);else continue;printf(“#“);printf(“$/n“);(分数:1.00)A.*#*#*#$B.#*#*#*$C.*#*#$D.#*#*$27.以下程序的运行结果是_。#include “stdio.h“main()int a=1,2,3,4,5,6,7,8,9,10,11,12;int *p=a+5,*q=NULL;*q=*(p+5);printf(“%d %d/n“,*p,*q);(分数:1.00)A.运行后报错B.

10、6 6C.6 12D.5 528.下列模式中,_是用户模式。(分数:1.00)A.内模式B.外模式C.概念模式D.逻辑模式29.请选出以下程序的输出结果_。#includestdio.hsub(int*s,inty)static int t=3,y=st;t-;main()int a=1,2,3,4,i,x=0;for(i=0;i4;i+)sub(a,x);printf(“%d“,x);printf(“/n“);(分数:1.00)A.1234B.4321C.0000D.444430.下列可用于 C语言标识符的一组是_。(分数:1.00)A.void WORD defineB.a 6$sys F

11、orC.2a sizeof abcD.Int define sizeof31.下列描述中不正确的是_。(分数:1.00)A.字符型数组中可以存放字符串B.可以对字符型数组进行整体输入、输出C.可以对整型数组进行整体输入、输出D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值32.有如下程序float fun (int x,int y)return(x+y);main()int a=2,b=5,c=8;printf(“%3.Of/n“,fun(int)fun(a+c,B) ,(a-C) )程序运行后的输出结果为_。(分数:1.00)A.编译出错B.9C.21D.9.033.C语言规

12、定,程序中各函数之间_。(分数:1.00)A.既允许直接递归调用也允许间接递归调用B.不允许直接递归调用也不允许间接递归调用C.允许直接递归调用不允许间接递归调用D.不允许直接递归调用允许间接递归调用34.请读程序:#includestdio.hfunc(int a,int b) int c;c=a+b;return c;main()int x=6,y=7,z=8,r,r=func(x-,y+,x+y),z-);printf(“%d/n“,r);上面程序的输出结果是_。(分数:1.00)A.11B.20C.21D.3135.请读程序片段(字符串内没有空格字符):printf(“%d/n“,st

13、rlen(“ATS/n012/1/“);上面程序片段的输出结果是_。(分数:1.00)A.11B.10C.9D.836.下列程序段中,不是死循环的是_。(分数:1.00)A.int i=100;B.unsigned k=0;while(1) doi=i%100+1; +kif(i=100)break; while(k=0);C.for(;);D.int s=3379;while(s+%2+s%2)s+;37.假定下面程序可执行文件名 prg.exe,则该程序所在的子目录下输入命令行:prg hello good回车后,程序的输出结果是_。main(int argc,char*argv)int

14、i;for(i=1;iargc;i+)printf(“%c“,argvi);(分数:1.00)A.hello goodB.hgC.helD.hellogood38.在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是_。(分数:1.00)A.可行性分析B.需求分析C.详细设计D.程序编码39.设变量 x为 float型且已经赋值,则以下语句中能够将 x中的数值保留到小数点后面两位,并将第三位四舍五入的是_。(分数:1.00)A.x=x*l00+0.5/100.0B.x=(x*100+O.5)/100C.x=(int)(x*100+0.5)/100.0D.x=(x/100+0.5

15、)*100.040.在使用程序流程图来表示算法时,菱形用来表示_。(分数:1.00)A.输入与输出B.子程序C.判断分支D.循环边界41.请读程序:#includestdio.h#includestring.hmain()char*s1=“AbCdEf“,*s2=“aB“;s1+;s2+;printf(“%d/n“,strcmp(s1,s2);上面程序的输出结果是_。(分数:1.00)A.正数B.负数C.零D.不确定的值42.有以下程序#includestdio.hmain()int c;while(c=getchar()!=/n)switch(c-2)case O:case1:putchar

16、(c+4);case 2:putchar(c+4);braeak;case3:putchar(c+3);default:putchar(c+2);break;从第一列开始输入以下数据,代表一个回车符。2473程序的输出结果是_。(分数:1.00)A.668977B.668966C.66778777D.668876643.下面能正确定义数组,并正确赋值的语句是_。(分数:1.00)_44.若 fp是指向某文件的指针,且已读到此文件的末尾,则函数 feof(fp)的返回值是_。(分数:1.00)A.EOFB.0C.非零值D.NULL45.请选出司用作 C语言用户标识符的一组标识符_。(分数:1.0

17、0)A.voidB.a3 b3C.ForD.2adefine 123 abc OOWORD IF case sizeof46.以下选项中属于 C语言的数据类型是_。(分数:1.00)A.复数型B.逻辑型C.双精度型D.集合型47.请读程序:#includestdio.hmain()int a=5,b=7,c=9;pintf(“%d,%d,“a,b,C) ;printf(“%d,%d“,a,D) ;上面程序的输出结果是_。(分数:1.00)A.5,7,9,5,7B.5,7,5,7C.5,7,不定 7,9D.5,7,5,7,不定48.下列叙述中正确的是_。(分数:1.00)A.数据处理是将信息转化

18、为数据的过程B.数据库设计是指设计数据库管理系统C.如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字D.关系中的每列称为元组,一个元组就是一个字段49.若有以下说明和语句,请选出哪个是对 c数组元素的正确引用_。int c45,(*cp)5;cp=c;(分数:1.00)A.cp+1B.*(cp+3)C.*(cp+1)+3D.*(*cp+2)50.以下程序的输出结果是_。main()int a=-1,b=1,k;if(+a0)(分数:2.00)填空项 1:_61.若要使指针 p指向一个 double类型的动态存储单元,请填空。p= 【11】 ma

19、lloc(sizeof(double);(分数:2.00)填空项 1:_62.下面程序的功能:输出 100以内能被 3整除且个位数为 6的所有整数,请补充完整。main()int i,j;for(i=0; 【12】 ;i+)j=i*10+6;if( 【13】 )continue;printf(“%d“,j);(分数:4.00)填空项 1:_63.函数 mycmp(char*s,char*t)的功能提比较字符串 s和 t的大小,当 s等于 t时返回 0,当 st 返回正值,当 st 时返回负值。请填空。mycmp(char*s,char*t)while(*s=*t)if(*s=/0)return

20、0;+s;+t;return( 【14】 )(分数:2.00)填空项 1:_64.以下程序运行后的输出结果是 【15】 。void fun()static int a=0;a+=2;printf(“%d“,A) ;main()int cc;for(cc=1;cc4,cc+)fun();printf(“/n“);(分数:2.00)填空项 1:_65.下列程序的运行结果是 【16】 。main()union EXAMPLEstructint x;int y;in;int a;int b;e:e.a=1;e.b=2;e.in.x=e.a*e.b;e.in.y=e.a+e.b;printf(“%d,%

21、d/n“,e.in.x,e.in.y);(分数:2.00)填空项 1:_66.在对文件进行操作的过程中,若要求文件的位置回到文件的开头,应当调用的函数是 【17】 函数。(分数:2.00)填空项 1:_67.以下函数用于求出一个 24矩阵中的最大元素值。max_value(arr)int arr4;int i,j,max;max=arrO0;for(i=0;i2;i+)for(j=0; 【18】 ;j+)if( 【19】 max)max= 【20】 ;return(max);(分数:6.00)填空项 1:_二级 C语言笔试-127 答案解析(总分:100.00,做题时间:90 分钟)一、选择题

22、(总题数:50,分数:60.00)1.以下数据结构属于非线性数据结构的是_。(分数:2.00)A.队列B.线性表C.二叉树 D.栈解析:评析 线性表、栈和队列等数据结构所表达和处理的数据以线性结构为组织形式。栈又称后进先出表(Last In First Out);队列又称先进先出表(First In First Out)。二叉树的数据结构是树型结构,结构中数据元素之间存在着一对多的关系,因此它是一种非线性数据结构。2.库函数 strcpy用以复制字符串,若有以下定义和语句:char str1=“china“,str210,*str3,*str4=“china“;则对库函数 strcpy的正确的

23、调用是_。(分数:2.00)A.strcpy(strl,“people“);B.strcpy(str2,“people“); C.strcpy(str3,“people“);D.strcpy(str4,“people“);解析:评析 strcpy(字符数组 1,字符串 2)其作用是将字符串 2复制到字符数组 1中去。注: (1)字符数组 1必须定义得足够大; (2)“字符数组 1”必须写成数组名的形式; (3)复制时连同字符串后面的/0一起复制到字符数组 1中。3.下面程序的输出结果是_。#define P1(x)printf(x)main()char d=“p“;P1(d) ;P1(“d“)

24、;(分数:2.00)A.pd B.d“d“C.“p“dD.“p“d“解析:评析 带参数的宏定义的一般形式为:#define 宏名(参数表)字符串程序中的 P1(d);经宏置换后为 printf(d);,所以输出字符串 p;程序中的 P1(“d“);经宏置换后 printf(“d“)。4.软件生命周期中所花费用最多的阶段是_。(分数:2.00)A.详细设计B.软件编码C.软件测试D.软件维护 解析:评析 软件生命周期分为软件定义、软件开发及软件运行维护 3个骱段。本题中详细设计、软件编码和软件测试都属于软件开发阶段;维护是软件生命周期的最后一个阶段。5.下列选项中不能正确定义结构体的是_。(分数

25、:2.00)A.typedef structB.struct color clint red; int red;int green; int green;int blue; int blue;COLOR; ;COLOR cl; C.struct colorD.structint red; int red;int green; int green;int blue; int blue;cl; cl;解析:评析 将一个变量定义为标准类型与定义为结构体类型不同之处在于:后者不仅要求指定变量为结构体类型,而且要求指定为某一特定的结构体类型(例如,struct color),不能只指定结构体名。其中可以

26、不出现结构体名,答案 D就是缺省结构体名的隋况。而变量名歹婊必须放在成员列表后面,所以 B答案不能正确将 cl定义为结构件变量。6.以下概念中,不属于面向对象方法的是_。(分数:2.00)A.对象、消息B.继承、多态C.类、封装D.过程调用 解析:评析 面向对象方法是一种运用对象、类、封装、继承、多态和消息等概念来构造、测试、重构软件的方法。面向对象方法从对象出发,发展出对象、类、消息、继承等概念。7.设有以下语句char a=3,b=6,c;c=ab2;则 c的二进制值是_。(分数:2.00)A.00011011 B.00010100C.00011100D.00011000解析:评析 “”是

27、 C语言中规定的左移运算符,是异或运算符,所以,c 的二进制值应为00011011。8.能正确表示 a和 b同时为正或同时为负的逻辑表达式是_。(分数:2.00)A.(a=0|b=0)后的输出结果为_。(分数:2.00)A.5 B.7C.12D.14解析:评析 在执行 printf()函数前,数组 str的长度是 7,但是当使用 strcpy()函数将新的值赋给str后,strlen()函数返回的应当是现在的 str字符串的字符个数,即是 5。11.下面程序的输出结果是_。union unint a4;long b;char c6;main()union un u;printf(“%d%d“,

28、sizeof(u),sizeof(u(分数:1.00)A.);A) 82B.88 C.188D.182解析:评析 sizeof 函数计算已知类型所占的字节数。共用体变量所占的内存长度等于最长的成员的长度。12.数据库系统的核心是_。(分数:1.00)A.数据模型B.DBMS C.软件工具D.数据库解析:评析 数据库管理系统 DBMS是数据库系统的核心。DBMS 是负责数据库的建立、使用和维护的软件。DBMS 建立在操作系统之上,实施对数据库的统一管理和控制。用户使用的各种数据库命令以及应用程序的执行,最终都必须通过 DBMS。13.以下说法中正确的是_。(分数:1.00)A.C语言程序总是从第

29、一个函数开始执行B.在 C语言程序中,要调用函数必须在 main()函数中定义C.C语言程序总是从 main()函数开始执行 D.C语言程序中的 main()函数必须放在程序的开始部分解析:评析 C 语言的程序是由主函数 main()开始运行,由主函数来调用其他函数,函数必须是并列的,定义后使用,不能在一个函数中定义其他函数,main()函数不一定要放在程序的开始部分,故选 C。14.以下程序的输出结果是_。main()int i,x33=9,8,7,6,5,4,3,2,1,*p=i4;i+=2)printf(“%d“,pi);(分数:1.00)A.5 2B.5 1C.5 3 D.9 7解析:

30、评析 题中*p=fun(int k)if(k0) fun(k-1);printf(“%d“,k);(分数:1.00)A.5 4 3 2 1B.0 l 2 3 4 5 C.1 2 3 4 5D.5 4 3 2 1 0解析:评析 函数的递归调用就是在调用一个函数的过程中又出现直接或间接地调用该函数本身。fun函数共被调用 6次,即 fun(5)、fun(4)、fun(3)、fun(2)、fun(1)、fun(O)。其中 fun(5)是 main函数调用的。16.设有如下定义struct sschar name 10;int age;char sex;std3,*p=std;下列各输入语句中错误的是

31、_。(分数:1.00)A.scanf(“%d“,(分数:1.00)A.2,0B.5,0C.5,5 D.2,5解析:评析 执行完一个 case后面的语句后,流程控制移到下一个 case继续执行。“case 常量表达式”只是起语句标号作用,并不是在该处进行条件判断。在执行 switch语句时,根据 switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。18.在一棵二叉树上第 8层的结点数最多是_。(分数:1.00)A.8B.16C.128 D.256解析:评析 根据二叉树的性质:二叉树第 j(i1)层上至多有 2i-1个结点。得到第 8层的结点数最多是 128。19.

32、下面叙述正确的是_。(分数:1.00)A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止 D.算法的时间复杂度是指执行算法程序所需要的时间解析:评析 算法的设计可以避开具体的计算机程序设计语言,但算法的实现必须借助程序设计语言中提供的数据类型及其算法。数据结构和算法是计算机科学的两个重要支柱。20.在 C语言中,不正确的 int类型的常数是_。(分数:1.00)A.32768 B.0C.037D.0xAF解析:评析 C 语言中 int类型的常数的范围是:-3276832767。C 整常数可用三种形式

33、表示:十进制整数,八进制整数,十六进制整数。选项 A超出范围,不正确。21.若已定义:int a9,*p=a;并在以后的语句中未改变 p的值,不能表示 a1地址的表达式是 _。(分数:1.00)A.p+1B.a+1C.a+ D.+p解析:评析 数组名是指针常量,是个固定的指针,不能对数组名赋予一个新的地址值,也不能使这个指针常驻量“移动”,指向数组的其他元素。22.请读程序:#includestdio.hmain()int a,b;for(a=1,b=1;a=100:a+)if(b=20)break;if(b%31”b+=3;continue;b=5;printf(“%d/n“,(分数:1.0

34、0)A.;上面程序的输出结果是_。A) 7B.8 C.9D.10解析:评析 break 语句的作用是用刊曲循环体;Continue 语句的作用是用于跳出本次循环。执行第一次循环时,(b%31)为真,b=4,继续下一次循环,如此反复,当 b=22时结束循环,共循环 8次,即a=8。23.C语言中下列叙述正确的是_。(分数:1.00)A.不能使用 dowhile 语句构成的循环B.dowhile 语句构成的循环,必须用 break语句才能退出C.dowhile 语句构成的循环,当 while语句中的表达式值为非零时结束循环D.dowhile 语句构成的循环,当 while语句中的表达式值为零时结束

35、循环 解析:评析 选项 A是错误的,C 语言支持 dowhile语句;选项 B是错误的,dowhile 构成的循环,当 while语句中的表达式值为零时结束循环,而不是非零;选项 C也是错误的。24.以下程序输出的结果是_。main()int a=65535;printf(“%d%u“,a,(分数:1.00)A.;A) -1-1B.65535 65535C.-1 65535 D.65535-1解析:评析 printf 函数中不同类型的数据用不同的格式字符,其中%d 是按整型数据的实际长度输出十进制整数。变量 a=65535以%d 格式输出时溢出输出值为该数的补码值,即-1:%u 用来输出 un

36、signed型数据,无符号整型变量的数值范围为 0 65535,所以变量 a=65535以%u 格式输出的值为 65535。25.下面描述中,不符合结构化程序计风格的是_。(分数:1.00)A.使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B.自顶向下C.注重提高程序的执行效率 D.限制使用 goto语句解析:评析 结构化程序设计方法的四条原则是:1自顶向下;2逐步求精;3模块化;4限制使用 goto语句。26.以下程序的输出结果是_。#includestdio.hmain()int i;for(i=1;i5;i+)if(i%2)printf(“*“);else continu

37、e;printf(“#“);printf(“$/n“);(分数:1.00)A.*#*#*#$B.#*#*#*$C.*#*#$ D.#*#*$解析:评析 当 i不可以整除 2时打印“*”然后打印“#”,不能整除 2则执行 continue,跳挝printf(“#“);语句,结束本次循环,返回到循环的起始点。当循环结束后,打印“$”。27.以下程序的运行结果是_。#include “stdio.h“main()int a=1,2,3,4,5,6,7,8,9,10,11,12;int *p=a+5,*q=NULL;*q=*(p+5);printf(“%d %d/n“,*p,*q);(分数:1.00)

38、A.运行后报错 B.6 6C.6 12D.5 5解析:评析 题目中没有给 q分配存储单元,只是简单的给它赋了一个值,所以程序的运行结果是 6 11 NULL pointer assignment,也就是运行后报错。28.下列模式中,_是用户模式。(分数:1.00)A.内模式B.外模式 C.概念模式D.逻辑模式解析:评析 数据库管理系统的三级模式结构由外模式、模式和内模式组成。外模式,指数据库用户所看到的数据结构,是用户看到的数据视图。模式,是数据库中对全体数据的逻辑结构和特性的描述,是所有用户所见到的数据视图的总和。内模式是指数据在数据库系统内的存储介质上的表示,即对数据的物理结构和存取方式的

39、描述。29.请选出以下程序的输出结果_。#includestdio.hsub(int*s,inty)static int t=3,y=st;t-;main()int a=1,2,3,4,i,x=0;for(i=0;i4;i+)sub(a,x);printf(“%d“,x);printf(“/n“);(分数:1.00)A.1234B.4321C.0000 D.4444解析:评析 x 作为函数 sub()的实参时,函数对 x值的改变没有返回主函数,并不能使得 x的值变化,所以在打印时,x 的值是始终不变的,即为 0。30.下列可用于 C语言标识符的一组是_。(分数:1.00)A.void WORD

40、 defineB.a 6$sys ForC.2a sizeof abcD.Int define sizeof 解析:评析 C 语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。注意,大写字母和小写字母被认为是两个不同的字符。C 语言中的关键字不能用作标识符。31.下列描述中不正确的是_。(分数:1.00)A.字符型数组中可以存放字符串B.可以对字符型数组进行整体输入、输出C.可以对整型数组进行整体输入、输出 D.不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值解析:评析 C 语言规定只能逐个引用数组元素而不合下次引用整个数组。字符数组的输入、输出可

41、以将整个字符串一次输入或输出。所以,选项 C的说法是不正确的。32.有如下程序float fun (int x,int y)return(x+y);main()int a=2,b=5,c=8;printf(“%3.Of/n“,fun(int)fun(a+c,B) ,(a-C) )程序运行后的输出结果为_。(分数:1.00)A.编译出错B.9 C.21D.9.0解析:评析 本题中先执行(int)fun(a+c,b)函数的调用,值为整型数值 15;然后再执行 fun(15,(a-c)函数调用,值为单精度实型数值 9.000000。输出为%3.of,即有效数长度为 3,没有小数位数,所以最后结果为

42、9。33.C语言规定,程序中各函数之间_。(分数:1.00)A.既允许直接递归调用也允许间接递归调用 B.不允许直接递归调用也不允许间接递归调用C.允许直接递归调用不允许间接递归调用D.不允许直接递归调用允许间接递归调用解析:评析 C 语言规定,程序中各函数之间既允许直接递归调用也允许间接递归调用。34.请读程序:#includestdio.hfunc(int a,int b) int c;c=a+b;return c;main()int x=6,y=7,z=8,r,r=func(x-,y+,x+y),z-);printf(“%d/n“,r);上面程序的输出结果是_。(分数:1.00)A.11

43、B.20C.21 D.31解析:评析 函数 func()的作用是返回两个形参的和,第一个形参是 x、y 分别自减和自增后的和,其中(x-,y+,x+y)是一个逗号表达式,它的值应该等于 x+y,所以整个表达式(x-,y+,x+y)的值为 13,而第二个形参的值为 8(根据语法规则,应当先使用,后自增),所以 func()的返回值为 13+8=21。35.请读程序片段(字符串内没有空格字符):printf(“%d/n“,strlen(“ATS/n012/1/“);上面程序片段的输出结果是_。(分数:1.00)A.11B.10C.9 D.8解析:评析 这个语句的目的是输出“ATS/n012/1/”

44、这个串的长度,在串中“/”代表一个“/”,而“/1”代表数字 1,也占一个字符,“/n”是回车换行符,也占一个字符,加上 A、T、S、0、1、2,共 g个字符。36.下列程序段中,不是死循环的是_。(分数:1.00)A.int i=100; B.unsigned k=0;while(1) doi=i%100+1; +kif(i=100)break; while(k=0);C.for(;);D.int s=3379;while(s+%2+s%2)s+;解析:评析 当表达式为非 0值时,执行 while语句中的内嵌语句,可用 break语句跳出循环,用continue语句结束本次循环。选项 A不是

45、死循环,当 i=100时跳出循环。选项 C为空循环语句。37.假定下面程序可执行文件名 prg.exe,则该程序所在的子目录下输入命令行:prg hello good回车后,程序的输出结果是_。main(int argc,char*argv)int i;for(i=1;iargc;i+)printf(“%c“,argvi);(分数:1.00)A.hello goodB.hg C.helD.hellogood解析:评析 带参数的 main()函数常用形式为:main(int argc,char*argv),其中,整型变量 argc用来记录命令行中的参数个数。参数的个数由 C程序运行时自动计算出来

46、。字符型指针数组 argv的第一个元素存放命令名,其后各个元素依次存放命令行中各个参数的首地址,数组的大小由 argc确定。for循环语句实现输出各参数的第一个字母。38.在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是_。(分数:1.00)A.可行性分析B.需求分析 C.详细设计D.程序编码解析:评析 软件开发阶段包括需求分析、总体设计、详细设计、编码和测试五个阶段。其中需求分析阶段常用的工具是数据流图和数据字典。39.设变量 x为 float型且已经赋值,则以下语句中能够将 x中的数值保留到小数点后面两位,并将第三位四舍五入的是_。(分数:1.00)A.x=x*l00+0.5/100.0B.x=(x*100+O.5)/100C.x=(int)(x*100+0.5)/100.0 D.x=(x/100+0.5)*100.0解析:评析 本题通过算术表达式的运算实现小数保保留两位并四舍五入的操作,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

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