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

    【计算机类职业资格】二级C语言分类模拟题506及答案解析.doc

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

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

    【计算机类职业资格】二级C语言分类模拟题506及答案解析.doc

    1、二级 C 语言分类模拟题 506 及答案解析(总分:55.00,做题时间:90 分钟)一、选择题(总题数:35,分数:55.00)1.有以下程序: #includestdio.h struct S int n;int a20; void f(struct S*p) int i,j,t; for(i=0;ip-n-1;i+) for(j=i+1;jp-n;j+) if(p-aip-aj) t=p-ai; p-ai=p-aj; p-aj=t; main() int i; struct S s=10,2,3,1,6,8,7,5,4,10,9; f( for(i=0;is.n;i+) printf(“

    2、%d,“,s.ai); 程序的运行结果是_。(分数:2.00)A.2,3,1,6,8,7,5,4,10,9,B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,4,5,6,7,8,9,10,D.10,9,8,7,6,1,2,3,4,5,2.若有定义 int a; float b; double c; 程序运行时输入: 3 4 5回车 能把值 3 输入给变量 a、4 输入给变量 b、5 输入给变量 a 的语句是_。(分数:2.50)A.scanf(“%d%f%lf“,a,b,c);B.scanf(“%d%lf%lf“,a,b,c);C.scanf(“%d%f%f“,a,b,c);D.s

    3、canf(“%lf%lf%If“,a,b,c);3.以下能正确定义数组并正确赋初值的选项是_。(分数:1.00)A.int N =5,bNN;B.int a12 = 1, 3;C.int c2=1,2, 3,4;D.int d32=1,2, 3,4;4.若有以下程序: #include stdio.h void sp(int *a) int b=2; *a=*a*2; printf(“%d,“,*a); a= *a=*a*2; printf(“%d,“,*a); main( ) int k=3; sp( printf(“%d/n“,k); 则程序的输出结果是_。(分数:2.50)A.6,12,

    4、12B.6,4,3C.6,4,6D.9,4,95.以下不能输出字符 A 的语句是_。(注:字符 A 的 ASCII 码值为 65,字符 a 的 ASCII 码值为 97。)(分数:1.00)A.printf(“%c/n“,“a“-32);B.printf(“%d/n“,“A“);C.printf(“%c/n“,65);D.printf(“%c/n“,“B“-1);6.若在定义语句:int a,b,c,*p=B.scanf(“%d%d%“, a, b, c);C.scanf(“%d“, p);D.scanf(“%d“, 7.假定 x 和 y 为 double 型,则表达式 x=2,y=x+3/2

    5、 的值是_。(分数:1.00)A.3.500000B.3C.2.000000D.3.0000008.下列叙述中错误的是_。(分数:2.00)A.可以用 typedef 将已存在的类型用一个新的名字来代表B.可以通过 typedef 增加新的类型C.用 typedef 定义新的类型名后,原有类型名仍有效D.用 typedef 可以为各种类型起别名,但不能为变量起别名9.在满足实体完整性约束的条件下_。(分数:1.00)A.一个关系中应该有一个或多个候选关键字B.一个关系中只能有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中可以没有候选关键字10.以下叙述中正确的是_。(分数:1.

    6、00)A.两个字符串可以用关系运算符进行大小比较B.函数调用 strlen(s);会返回字符串 s 实际占用内存的大小(以字节为单位)C.C 语言本身没有提供对字符串进行整体操作的运算符D.当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的和11.有以下程序: #include stdio.h main( ) char s1 = “programe“, s2 = “Language“; char * p1 = s1, * p2 = s2; int k; for(k=0; k8; k+) if( * (p1+k) = * (p2+k) printf(“%s/n“, (p1+k);

    7、程序的运行结果是_。(分数:1.00)A.grame ame eB.g a eC.programeD.无输出字符12.下列叙述中错误的是_。(分数:1.00)A.数据结构中的数据元素不能是另一数据结构B.数据结构中的数据元素可以是另一数据结构C.空数据结构可以是线性结构也可以是非线性结构D.非空数据结构可以没有根结点13.有以下程序: #includestdio.h struct tt int x; struct tt *y; s2=1,0,2,0; main() struct tt *p=s; p-y=s; printf(“%d“,+p-x); 程序运行后的输出结果是_。(分数:1.00)A

    8、.2B.0C.1D.314.当变量 c 的值不为 2、4、6 时,值也为“真“的表达式是_。(分数:1.00)A.(c=2 以下叙述中正确的是_。(分数:2.50)A.此 while 语句将无限循环B.getchar()不可以出现在 while 语句的条件表达式中C.当执行此 while 语句时,只有按回车键程序才能继续执行D.当执行此 while 语句时,按任意键程序就能继续执行18.某二叉树的前序序列为 ABCDEFG,中序序列为 DCBAEFG,则该二叉树的后序序列为_。(分数:1.00)A.EFGDCBAB.DCBEFGAC.BCDGFEAD.DCBGFEA19.以下叙述中正确的是_。

    9、(分数:2.00)A.C 程序书写格式自由,一个语句可以写在多行上B.C 程序书写格式严格,要求一行内只能写一个语句C.C 程序中的注释只能出现在程序的开始位置和语句的后面D.用 C 语言编写的程序只能放在一个程序文件中20.以下程序的输出结果是_。 #include stdio.h int d=1; fun(int p) static int d=5; d+=p; printf(“% d“, d); return (d); main() int a=3; printf(“% d/n“, fun(a+fun(d); (分数:1.00)A.699B.669C.61515D.661521.下列选项

    10、中不属于结构化程序设计方法的是 _ 。(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用22.有以下程序: #includestdio.h main() int a4,p,x,i; for(i=3;i0;i-)ai-1=i*2-1; scanf(“%d“, i=0; while(aix)i+; p=i; for(i=3;ip;i-)ai=ai-1; ap=x; for(i=0;i4;i+)printf(“%3d“,ai); printf(“/n“); 执行时输入:2回车,则输出结果是_。(分数:1.00)A.1 2 3 4B.5 4 3 1C.1 2 3 5D.3 2 1 423.

    11、下面程序的输出是_。 main() int x=3,y=6,a=0; while(x+!=(y-=1) a+=1 if(yx)break; printf(“x=%d,y=%d,=%d/n“,x,y,a); (分数:2.00)A.x=4,y=4,a=1B.x=5,y=5,a=1C.x=5,y=4,a=3D.x=5,y=4,a=124.若有下列语句: char a=“xyz“; char b=“x“,“y“,“z“; 则下列叙述正确的是_。(分数:1.00)A.数组 a 和数组 b 不等价B.数组 a 和数组 b 的长度相同C.数组 a 占用空间大小等于数组 b 占用空间大小D.数组 a 占用空间

    12、大小大于数组 b 占用空间大小25.以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是 _ 。(分数:2.00)A.char s10=“abcdefg“;B.char t=“abcdefg“,*s=t;C.char s10;s=“abcdefg“;D.char s10;strcpy(s,“abcdefg“);26.执行下述程序时,若从键盘输入 6 和 8,结果为_。 main() int a,b,s; scanf(“%d%d“, s=a; if(s=b)s*=s; printf(“%d“,s);(分数:2.50)A.36B.64C.48D.以上都不对27.有以下程序: #include

    13、stdio.h main() int a5=2,4,6,8,10,*p,* *k; p=a;k=p; pnntf(“%d“,(p+); printf(|%d/n“,* *k); 程序运行后的输出结果是_。(分数:1.00)A.4 6B.4 4C.2 2D.2 428.软件详细设计产生的图如右图所示: (分数:1.00)A.N-S 图B.PADC.程序流程图D.E-R 图29.设计软件结构是软件生命周期的_。(分数:2.50)A.软件定义期B.软件开发期C.软件维护期D.以上 3 个都不是30.在用 fopen 函数打开一个已经存在的数据文件 abc 时,若要求既可以读出 abe 文件中原来的内

    14、容,也可以用新的数据覆盖文件原来的数据,则调用 fopen 函数时,使用的存取方式参数应当是_。(分数:2.00)ArBaCr+Dw31.某二叉树共有 845 个节点,其中叶子节点有 45 个,则度为 1 的节点数为_。(分数:1.00)A.400B.754C.756D.不确定32.有以下程序: #includestdio.h main() int i,sum; for(i=1;i6;i+)sum+=i; printf(“%d/n“,sum); 程序运行后的输出结果是_。(分数:1.00)A.随机值B.0C.15D.1633.以下叙述正确的是_。(分数:1.00)A.C 语言程序是由过程和函数

    15、组成的B.C 语言函数可以嵌套调用,例如:fun(fun(x)C.C 语言函数不可以单独编译D.C 语言中除了 main 函数,其他函数不可作为单独文件形式存在34.下面程序的输出结果是_。 #includestdio.h main() char a=“a“,“b“,“c“,“d“,“f“,“g“,*p; p=a; printf(“%c/n“,*p+4); (分数:2.50)AaBbCeDf35.有以下程序: #includestdio.h main() int i,j,m=55; for(i=1;i=3;i+) for(j=3;j=i;j+)m=m%j; printf(“%d/n“,m);

    16、程序运行后的输出结果是_。(分数:1.00)AOBlC.2D.3二级 C 语言分类模拟题 506 答案解析(总分:55.00,做题时间:90 分钟)一、选择题(总题数:35,分数:55.00)1.有以下程序: #includestdio.h struct S int n;int a20; void f(struct S*p) int i,j,t; for(i=0;ip-n-1;i+) for(j=i+1;jp-n;j+) if(p-aip-aj) t=p-ai; p-ai=p-aj; p-aj=t; main() int i; struct S s=10,2,3,1,6,8,7,5,4,10,

    17、9; f( for(i=0;is.n;i+) printf(“%d,“,s.ai); 程序的运行结果是_。(分数:2.00)A.2,3,1,6,8,7,5,4,10,9,B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,4,5,6,7,8,9,10, D.10,9,8,7,6,1,2,3,4,5,解析:解析 本题中子函数 f 的功能是对结构体变量 s 中第二个成员数组中的所有数据进行从小到大的冒泡排序,所以结果是 C 选项。2.若有定义 int a; float b; double c; 程序运行时输入: 3 4 5回车 能把值 3 输入给变量 a、4 输入给变量 b、5 输入给变

    18、量 a 的语句是_。(分数:2.50)A.scanf(“%d%f%lf“,a,b,c); B.scanf(“%d%lf%lf“,a,b,c);C.scanf(“%d%f%f“,a,b,c);D.scanf(“%lf%lf%If“,a,b,c);解析:解析 int,float,double 对应的格式控制符分别为%d,%f,%lf,所以答案选择 A。3.以下能正确定义数组并正确赋初值的选项是_。(分数:1.00)A.int N =5,bNN;B.int a12 = 1, 3;C.int c2=1,2, 3,4;D.int d32=1,2, 3,4; 解析:解析 选项 A 中,数组的下标应为整型变

    19、量;选项 B 的行下标应为 2;选项 C 的列下标不能省略。4.若有以下程序: #include stdio.h void sp(int *a) int b=2; *a=*a*2; printf(“%d,“,*a); a= *a=*a*2; printf(“%d,“,*a); main( ) int k=3; sp( printf(“%d/n“,k); 则程序的输出结果是_。(分数:2.50)A.6,12,12B.6,4,3C.6,4,6 D.9,4,9解析:解析 首先在主函数中给整型变量 k 赋值为 3,调用 sp 函数,将变量 k 的地址作为实参传递给形参指针变量 a;在 sp 函数中,*

    20、a=*a*2;即结果为 6,由于指针变量 a 指向地址 k,所以 k 值此时也变成6,通过 printf()函数输出。整型变量 b 的地址赋给指针变量 a,再执行*a=*a+2;语句,即结果为 4,通过 printf()函数输出。返回主函数,输出 k 的值 6。因此 C 选项正确。5.以下不能输出字符 A 的语句是_。(注:字符 A 的 ASCII 码值为 65,字符 a 的 ASCII 码值为 97。)(分数:1.00)A.printf(“%c/n“,“a“-32);B.printf(“%d/n“,“A“); C.printf(“%c/n“,65);D.printf(“%c/n“,“B“-1

    21、);解析:解析 B 选项输出的格式为%d,即为整型格式,所以输出字符 A 的 ASCII 码值 65,而不是字符A。由于大写字母比与其对应的小写字母的 ASCII 码值小 32,所以 A 选项正确。字符 A 的 ASCII 码值就是65,所以以%c 格式输出可以输出字符 A,所以 C 选项正确。由于字符 A 的 ASCII 码值比字符 B 的小 1,所以 D 选项正确。6.若在定义语句:int a,b,c,*p=B.scanf(“%d%d%“, a, b, c);C.scanf(“%d“, p); D.scanf(“%d“, 解析:解析 题中整型指针变量 p 存放的是变量 c 的地址。所以本题

    22、答案为 C。7.假定 x 和 y 为 double 型,则表达式 x=2,y=x+3/2 的值是_。(分数:1.00)A.3.500000B.3C.2.000000D.3.000000 解析:解析 在 x=2,y=x+3/2 中,3/2=1,2+1=3,因此表达武的值为 3,因为 x、y 为 double 型变量,故选择 D 选项。8.下列叙述中错误的是_。(分数:2.00)A.可以用 typedef 将已存在的类型用一个新的名字来代表B.可以通过 typedef 增加新的类型 C.用 typedef 定义新的类型名后,原有类型名仍有效D.用 typedef 可以为各种类型起别名,但不能为变量

    23、起别名解析:解析 本题考查 typedef 的用法。typedef 并不是增加一种新的类型,而是对已存在的类型用一个新的名字来代表,所以 B 选项错误。9.在满足实体完整性约束的条件下_。(分数:1.00)A.一个关系中应该有一个或多个候选关键字 B.一个关系中只能有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中可以没有候选关键字解析:解析 实体完整性约束要求关系的主键中属性值不能为空值,因此本题答案为 A。10.以下叙述中正确的是_。(分数:1.00)A.两个字符串可以用关系运算符进行大小比较B.函数调用 strlen(s);会返回字符串 s 实际占用内存的大小(以字节为单位

    24、)C.C 语言本身没有提供对字符串进行整体操作的运算符 D.当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的和解析:解析 本题考查字符串处理函数 strlen、strcat、strcmp。A 选项中不能用关系运算符进行大小比较,可以使用 strernp。B 选项中 strlen 返回的是字符串 s 实际占用内存大小加上结尾符。D 选项当使用连接函数 strcat 时,内存空间会减少一个字符位置。11.有以下程序: #include stdio.h main( ) char s1 = “programe“, s2 = “Language“; char * p1 = s1, * p

    25、2 = s2; int k; for(k=0; k8; k+) if( * (p1+k) = * (p2+k) printf(“%s/n“, (p1+k); 程序的运行结果是_。(分数:1.00)A.grame ame e B.g a eC.programeD.无输出字符解析:解析 定义两个指针变量 p1、p2,分别指向数组 s1、s2 首地址,在 for 循环中,比较两个指针对应地址的元素是否相等,如果相等,则输出当前指针指向地址的字符串,故答案为 A 选项。12.下列叙述中错误的是_。(分数:1.00)A.数据结构中的数据元素不能是另一数据结构 B.数据结构中的数据元素可以是另一数据结构C

    26、.空数据结构可以是线性结构也可以是非线性结构D.非空数据结构可以没有根结点解析:解析 数据元素是一个含义很广泛的概念,它是数据的“基本单位”,在计算机中通常作为一个整体进行考虑和处理。数据元素可以是一个数据也可以是被抽象出的具有一定结构的数据集合,所以数据结构中的数据元素可以是另一数据结构。满足有且只有一个根节点并且每一个节点最多有一个前件,也最多有一个后件的非空的数据结构被认为是线性结构,不满足上述条件的结构为非线性结构。空数据结构可以是线性结构也可以是非线性结构。非空数据结构可以没有根节点,如非性线结构“图”就没有根节点。故选 A 选项。13.有以下程序: #includestdio.h

    27、struct tt int x; struct tt *y; s2=1,0,2,0; main() struct tt *p=s; p-y=s; printf(“%d“,+p-x); 程序运行后的输出结果是_。(分数:1.00)A.2 B.0C.1D.3解析:解析 *p=s,可得 p 指向 s0,p-y 指向 s1,现 p-y=s,因此 p-y 指向 s0。因此 p-x=1,+p-x 等价于+(p-x),因此打印结果为 2。答案为 A 选项。14.当变量 c 的值不为 2、4、6 时,值也为“真“的表达式是_。(分数:1.00)A.(c=2 以下叙述中正确的是_。(分数:2.50)A.此 wh

    28、ile 语句将无限循环B.getchar()不可以出现在 while 语句的条件表达式中C.当执行此 while 语句时,只有按回车键程序才能继续执行 D.当执行此 while 语句时,按任意键程序就能继续执行解析:解析 根据程序顺序执行的次序,当程序执行到 while 这条语句,根据 while 语句中的结束循环的条件是“输入回车键时,结束循环”,所以当按回车键后,程序才执行 while 语句的下一条语句。18.某二叉树的前序序列为 ABCDEFG,中序序列为 DCBAEFG,则该二叉树的后序序列为_。(分数:1.00)A.EFGDCBAB.DCBEFGAC.BCDGFEAD.DCBGFEA

    29、 解析:解析 二叉树遍历的三种方式:前序遍历,访问根结点在访问左子树和访问右子树之前;中序遍历,访问根结点在访问左子树和访问右子树两者之间;后序遍历,访问根结点在访问左子树和访问右子树之后。二叉树的前序序列为 ABCDEFG,A 为根结点。中序序列为 DCBAEFG,可知 DCB 为左子树结点,EFG 为右子树结点。依此类推,画出该二叉树,二叉树的后序序列为 DCBGFEA。19.以下叙述中正确的是_。(分数:2.00)A.C 程序书写格式自由,一个语句可以写在多行上 B.C 程序书写格式严格,要求一行内只能写一个语句C.C 程序中的注释只能出现在程序的开始位置和语句的后面D.用 C 语言编写

    30、的程序只能放在一个程序文件中解析:解析 C 程序书写格式自由,B、C、D 错误。20.以下程序的输出结果是_。 #include stdio.h int d=1; fun(int p) static int d=5; d+=p; printf(“% d“, d); return (d); main() int a=3; printf(“% d/n“, fun(a+fun(d); (分数:1.00)A.699B.669C.61515 D.6615解析:21.下列选项中不属于结构化程序设计方法的是 _ 。(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用 解析:解析 结构化程序设计的主

    31、要原则概括为自顶向下、逐步求精和限制使用 GOTO 语句。22.有以下程序: #includestdio.h main() int a4,p,x,i; for(i=3;i0;i-)ai-1=i*2-1; scanf(“%d“, i=0; while(aix)i+; p=i; for(i=3;ip;i-)ai=ai-1; ap=x; for(i=0;i4;i+)printf(“%3d“,ai); printf(“/n“); 执行时输入:2回车,则输出结果是_。(分数:1.00)A.1 2 3 4B.5 4 3 1C.1 2 3 5 D.3 2 1 4解析:解析 第一个 for 循环初始化数组 a

    32、,分别为 1,3,5,随机数,形成了基本有序的序列,再将输入的数字插入到数组 a,使它们形成有序序列。因此可以分析出,打印的结果为 1,2,3,5。故答案为 C选项。23.下面程序的输出是_。 main() int x=3,y=6,a=0; while(x+!=(y-=1) a+=1 if(yx)break; printf(“x=%d,y=%d,=%d/n“,x,y,a); (分数:2.00)A.x=4,y=4,a=1B.x=5,y=5,a=1C.x=5,y=4,a=3D.x=5,y=4,a=1 解析:解析 注意的是 x+中 x 值的引用时,这里应当是先引用,后自加,具体执行过程如下: 第次

    33、while 循环:条件为真,执行 a=a+1=1;此时,x 的值已为 4,判断 yx 不成立,继续执行循环; 第二次 while 循环;条件为假,此时 x 的值已为 5,退出 while 循环,执行 printf。24.若有下列语句: char a=“xyz“; char b=“x“,“y“,“z“; 则下列叙述正确的是_。(分数:1.00)A.数组 a 和数组 b 不等价B.数组 a 和数组 b 的长度相同C.数组 a 占用空间大小等于数组 b 占用空间大小D.数组 a 占用空间大小大于数组 b 占用空间大小 解析:解析 数组 a 的存储空间占 4 个字节(结束符“/0“占一字节),数组 a

    34、 的存储空间占 3 个字节。25.以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是 _ 。(分数:2.00)A.char s10=“abcdefg“;B.char t=“abcdefg“,*s=t;C.char s10;s=“abcdefg“; D.char s10;strcpy(s,“abcdefg“);解析:解析 C 语言中不能给数组整体赋初值,所以选项 C 是不正确的。26.执行下述程序时,若从键盘输入 6 和 8,结果为_。 main() int a,b,s; scanf(“%d%d“, s=a; if(s=b)s*=s; printf(“%d“,s);(分数:2.50)A.

    35、36B.64 C.48D.以上都不对解析:27.有以下程序: #includestdio.h main() int a5=2,4,6,8,10,*p,* *k; p=a;k=p; pnntf(“%d“,(p+); printf(|%d/n“,* *k); 程序运行后的输出结果是_。(分数:1.00)A.4 6B.4 4C.2 2D.2 4 解析:解析 首先通过 p=a 使 p 指向数组的第 1 个元素,所以输出 2;在输出 2 以后,由于 p+,即 p 就指向数组的第 2 个元素,* *k 就是取出 p 所指向元素的值,而 p 指向的是数组的第 2 个元素,即输出 4。因此 D 选项正确。28

    36、.软件详细设计产生的图如右图所示: (分数:1.00)A.N-S 图B.PADC.程序流程图 D.E-R 图解析:解析 N-S 图(也被称为盒图或 CHAPIN 图)和 PAD(问题分析图)及 PFD(程序流程图)是详细设计阶段的常用工具,E-R 图也即实体一联系图是数据库设计的常用工具。从题中图可以看出该图属于程序流程图。29.设计软件结构是软件生命周期的_。(分数:2.50)A.软件定义期B.软件开发期 C.软件维护期D.以上 3 个都不是解析:解析 本题是对软件设计结构的考查。设计软件结构是软件概要设计阶段进行的,而概要设计属于软件开发期。30.在用 fopen 函数打开一个已经存在的数

    37、据文件 abc 时,若要求既可以读出 abe 文件中原来的内容,也可以用新的数据覆盖文件原来的数据,则调用 fopen 函数时,使用的存取方式参数应当是_。(分数:2.00)ArBaCr+ Dw解析:31.某二叉树共有 845 个节点,其中叶子节点有 45 个,则度为 1 的节点数为_。(分数:1.00)A.400B.754C.756 D.不确定解析:解析 在树结构中,一个节点所拥有的后件个数称为该节点的度,所有节点中最大的度称为树的度。对任何一棵二叉树,度为 0 的节点(即叶子节点)总是比度为 2 的节点多一个。二叉树共有 845 个节点,度为 0 的节点有 45 个,度为 1 的节点数为

    38、n1,度为 2 的节点数为 n2,则 845=45+n1+n2,且 45=n2+1,则n1=756,C 选项正确。32.有以下程序: #includestdio.h main() int i,sum; for(i=1;i6;i+)sum+=i; printf(“%d/n“,sum); 程序运行后的输出结果是_。(分数:1.00)A.随机值 B.0C.15D.16解析:解析 本题重点考查 for 语句。变量没有初始化的情况下,默认值与编译器有关系,不同的编泽器有不同的值。因此 A 选项正确。33.以下叙述正确的是_。(分数:1.00)A.C 语言程序是由过程和函数组成的B.C 语言函数可以嵌套调

    39、用,例如:fun(fun(x) C.C 语言函数不可以单独编译D.C 语言中除了 main 函数,其他函数不可作为单独文件形式存在解析:解析 C 语言程序是由主函数和若干子函数构成的,可以嵌套使用。主函数调用子函数,子函数在定义时是并列的,子函数可相互调用或被多次调用。34.下面程序的输出结果是_。 #includestdio.h main() char a=“a“,“b“,“c“,“d“,“f“,“g“,*p; p=a; printf(“%c/n“,*p+4); (分数:2.50)AaBbCe Df解析:解析 “*”号的优先级比“+”的优先级高,所以先执行“*p”;指针 p 指向的是数组的首

    40、地址,因此“*p=a”,再加 4 得“e“。35.有以下程序: #includestdio.h main() int i,j,m=55; for(i=1;i=3;i+) for(j=3;j=i;j+)m=m%j; printf(“%d/n“,m); 程序运行后的输出结果是_。(分数:1.00)AOBl C.2D.3解析:解析 第一次执行外循环 i 的值为 1,满足条件,判断第一次内循环,j 的值为 3,不满足条件,跳出内循环。第二次执行外循环 i 的值为 2,同理也不满足内循环条件,跳出内循环。第三次执行外循环i 的值为 3,此时进入内循环判断条件时,条件成立,执行 m=m%j,m 的值为 1,跳出内循环,跳出外循环打印 m 的值。


    注意事项

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




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

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

    收起
    展开