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

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

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

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

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

    1、二级 C 语言笔试-110 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.若有结构体定义:struct stuint num;char sex;int age;al,a2;则下列语句中错误的是( )。(分数:2.00)A.printf(“%d,%C,%d“,a1);B.a2.agea1.age;C.a1.age+;D.a1.num5;2.设 x、y 和 z 是 int 型变量,且 x4,y6,z8,则下列表达式中值为 0 的是( )。(分数:2.00)A.xppppprintf(“%d,%d/n“,*p,*pp);则输出结果是( )。(分

    2、数:2.00)A.20,10B.20,20C.10,20D.10,105.下列特征中不是面向对象方法的主要特征的是( )。(分数:2.00)A.多态性B.继承C.封装性D.模块化6.若 ch 为 char 型变量,k 为 int 型变量(已知字符 a 的 ASCII 码是 97),则执行下列语句后输出的结果为( )。chb;k10;printf(“%x,%o,“,ch,ch,k);printf(“k%d/n“,k);(分数:2.00)A.因变量类型与格式描述符的类型不匹配,输出无定值B.输出项与格式描述符个数不符,输出为 0 值或不定值C.62,142,k%dD.62,142,k%107.下列

    3、说法不正确的是( )。(分数:2.00)A.一个 C 语言源程序可以由一个函数组成也可以由多个函数组成B.main()中的“()”是函数的参数部分,括号内可为空,但括号不能省略C.C 语言程序是以函数为基本单位的D.在 C 语言程序中,注释行只能位于一条语句的后面8.下列叙述中正确的是( )。(分数:2.00)A.在赋值表达式中,赋值号的左边既可以是变量,也可以是任意表达式B.实型变量中允许存放整型数C.若 a 和 b 类型相同,在执行了赋值 ab 后,b 中的值将放入 a 中,但 b 中的值不变D.在 c 程序中,求余运算符“%”两边的类型相同时才能进行运算9.在“文件包含”预处理语句的使用

    4、形式中,当#include 后面的文件名用“(双撇号)括起时,寻找被包含文件的方式是( )。(分数:2.00)A.直接按系统设定的标准方式搜索目录B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索C.仅仅搜索源程序所在目录D.仅仅搜索当前目录10.下列描述中正确的是( )。(分数:2.00)A.在 C 语言程序中预处理是指完成宏替换和文件包含指定的文件的调用B.预处理指令只能位于 C 源程序文件的首部C.预处理命令可以放在程序中的任何位置D.预处理命令结尾需要加分号11.下列程序的输出结果是( )。main()int a4,b5,c;ifaB) ca*b;printf(“%d,

    5、%d,%d/n“,b,a,c);elsecb/a;printf(“%d,%d,%d/n“,b,a,c);(分数:1.00)A.4,5,12B.20C.5,4,20D.1212.在 C 语言程序中,下列说法正确的是( )。(分数:1.00)A.函数的定义和函数的调用均可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义可以嵌套,但函数的调用不可以嵌套D.函数的定义和函数的调用均不可以嵌套13.下列叙述中正确的是( )。(分数:1.00)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响

    6、数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率14.对长度为 n 的线性表进行顺序查找,在最坏的情况下需要比较的次数为( )。(分数:1.00)A.125B.n/2C.nD.n+115.在 C 语言中,while 和 dowhile 循环的主要区别是( )。(分数:1.00)A.dowhile 的循环体不能是复合语句B.dowhile 允许从循环体外转到循环体内C.while 的循环体至少被执行一次D.dowhile 的循环体至少被执行一次16.最简单的交换排序方法是( )。(分数:1.00)A.快速排序B.选择排序C.堆排序D.冒泡排序17.若各选项中

    7、所用变量己正确定义,fun()函数中通过 return 语句返回一个函数值,下列选项中错误的程序是( )。(分数:1.00)A.main()B.float fun(int a,intb) xfun(2,10); main()float fun(int a,intb) xfun(i,j);C.float fun(int,int);D.main()main() B.charc32;C.float ff+1.1;D.doublex12.3E2.5;20.sizeof(float)是( )。(分数:1.00)A.一种函数调用B.一种函数定义C.一个浮点表达式D.一个整型表达式21.有下列程序:main

    8、()int k5;while(-k) printf(“%d“,k-3);printf(“/n“);执行后的输出结果是( )。(分数:2.00)A.1B.2C.4D.死循环22.若变量已正确定义,要求通过 scanf(“%c%d%c%d,for(i1;i5;i+)Switch(i)case 0:case 3:a+1;case 1:case 2:a+2;default:a+3;printf(“%d“,(分数:2.00)A.:b26.若有说明 chars130“abc“,s2“defghi“;,则在使用函数 strcat(s1,s2)后,结果是( )(分数:2.00)A.s1 的内容更新为 abcd

    9、efghiB.s1 的内容更新为 defghi/0C.s1 的内容更新为 defghiabc/0D.s1 的内容更新为 abcdefghi/027.在位运算中,操作数每右移两位,其结果相当于( )。(分数:2.00)A.操作数乘以 2B.操作数除以 2C.操作数除以 4D.操作数乘以 428.下列合法的声明语句是( )。(分数:2.00)A.int_abc50;B.double int3+5e2.5;C.long do1L;D.float 3_asd3e-3;29.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送( )。(分数:2.00)A.调用语句B.命令C.口令D.消息3

    10、0.下列程序的输出结果是( )。main()int i1,j2,k3;if(i+1(分数:2.00)A.1 2 3B.2 3 4C.2 2 3D.2 3 331.判断 char 型变量 c1 是否为小写字母的正确表达式为( )。(分数:2.00)A.ac1ZB.(c1A)C.(ac1(“z“c1)D.(c1a)main()int a1,b2,c3,sum;stunfun(a+,b+,a+b) ,c+);printf(“%d/n“,sum);执行后的输出结果是( )。(分数:2.00)A.6B.7C.8D.938.若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是( )。(分数:2.00

    11、)A.实参与其对应的形参共占存储单元B.只有当实参与其对应的形参同名时才共占存储单元C.实参与其对应的形参分别占用不同的存储单元D.实参将数据传递给形参后,立即释放原先占用的存储单元39.下列二维数组的说明中,不正确的是( )。(分数:2.00)A.floata40,1,8,5,9;B.inta34;C.#define N 5D.inta29.5;float aN3;40.下列能正确进行字符串赋值的是( )。(分数:2.00)A.chars5“ABCDE“;B.char s5+A,B,C,D,E),C.char*s;s“ABCDE“;D.char*s;printf(“%SS);二、填空题(总题

    12、数:15,分数:30.00)41.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。(分数:2.00)填空项 1:_42.注释一般分为序言性注释和 1 注释。(分数:2.00)填空项 1:_43.在面向对象的程序设计方法中,类的实例称为 1。(分数:2.00)填空项 1:_44.某二叉树中度为 2 的结点有 18 个,则该二叉树中有 1 个叶子结点。(分数:2.00)填空项 1:_45.数据流图的类型有 1 和事务型。(分数:2.00)填空项 1:_46.x、y、x 均为 int 型变量,描述“x、y 和 z 中至少

    13、有两个为正数”的表达式是 1。(分数:2.00)填空项 1:_47.与表达式 a+=b 等价的另一书写形式是 1。(分数:2.00)填空项 1:_48.下列程序的输出结果是_。#includestdio.hmain0intx1,y1,a1,b1;switch(x)case1:switch(y)case 0:a+;break;case 1:b+;break;case2:a+;b+;break;printf(“a%d,b%d/n“,a,B);(分数:2.00)填空项 1:_49.C 语言用于结构化程序设计的 3 种基本结构是 1、选择结构和循环结构。(分数:2.00)填空项 1:_50.下列循环的

    14、循环次数是_。ihtk2;while(k0)printf(“%d“,k);k-;printf(“/n“);(分数:2.00)填空项 1:_51.若有定义 floatb15,*pb;,且数组 b 的首地址为 200H,则 p/13 所指向的数组元素的地址为 1。(分数:2.00)填空项 1:_52.“printf(“%d/n“,strlen(“/t/“/023/xABC/n“);“语句的输出结果是_。(分数:2.00)填空项 1:_53.设有下列宏定义:#define A2#define B A+3则执行赋值语句:tb *2;t 为血型变量后的值是_。(分数:2.00)填空项 1:_54.下列程

    15、序的功能是将字符串 s 中所有的字符 c 删除。请填空。#includestdio.hmain()char s80;int i,j;gets(S);for(ij0;si!/0;i+)if(si!c)_;sj/0;puts(S);(分数:2.00)填空项 1:_55.下列程序的运行结果是_。#includestdio.hfunc(a,B) static int m0,i2;i+m+1;mi+a+b;return(m);main0intk5,m3,p;pfunc(k,m);printf(“%d“,p);pfunc(k,m);printf(“%d/n“,p);(分数:2.00)填空项 1:_二级 C

    16、 语言笔试-110 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.若有结构体定义:struct stuint num;char sex;int age;al,a2;则下列语句中错误的是( )。(分数:2.00)A.printf(“%d,%C,%d“,a1); B.a2.agea1.age;C.a1.age+;D.a1.num5;解析:解析 题中 a1 和 a2 两个结构体变量名所对应的成员相同,可以与运算“+“相结合。结构体变量的输出格式:prinf(“要输出变量名:%d/t“,结构变量名要输出的成员变量名)。2.设 x、y 和 z 是 i

    17、nt 型变量,且 x4,y6,z8,则下列表达式中值为 0 的是( )。(分数:2.00)A.x*(ai+j);*(*(a+i)+j);*(aij;*(ppppprintf(“%d,%d/n“,*p,*pp);则输出结果是( )。(分数:2.00)A.20,10B.20,20C.10,20D.10,10 解析:解析 本题考查指针变量的赋值。*pp 是定义了一个指向指针的指针变量,语句 ppk10;printf(“%x,%o,“,ch,ch,k);printf(“k%d/n“,k);(分数:2.00)A.因变量类型与格式描述符的类型不匹配,输出无定值B.输出项与格式描述符个数不符,输出为 0 值

    18、或不定值C.62,142,k%d D.62,142,k%10解析:解析 第 1 个 printf 函数,格式说明的个数是 2,而输出项的个数是 3,所以对于多余的输出项k 不予输出;第 2 个 pfintf 函数,有两个%说明,第 1 个%后面的字符要原样输出。知识拓展 本题考查 printf 函数的格式。“%x”和“%o”分别表示以十六进制和八进制无符号型输出整型数据(不带前导 0x 或 0):printf 函数中格式说明符之前插入的任何字符都原样输出;格式说明与输出项的个数也要相等,如果格式说明的个数少于输出项的个数,则对于多余的输出项不予输出。7.下列说法不正确的是( )。(分数:2.0

    19、0)A.一个 C 语言源程序可以由一个函数组成也可以由多个函数组成B.main()中的“()”是函数的参数部分,括号内可为空,但括号不能省略C.C 语言程序是以函数为基本单位的D.在 C 语言程序中,注释行只能位于一条语句的后面 解析:解析 本题涉及 C 语言基本的 3 个知识点:C 语言是以函数为基本单位的,每一个函数完成相对独立的功能,一个程序可以包括多个函数,但有且仅有一个主函数:主函数 main()的圆括号内是填写参数的,可以没有参数,但括号不可以省略;程序的注释部分应该在“/ */”之间,它允许出现在程序的任何位置。8.下列叙述中正确的是( )。(分数:2.00)A.在赋值表达式中,

    20、赋值号的左边既可以是变量,也可以是任意表达式B.实型变量中允许存放整型数 C.若 a 和 b 类型相同,在执行了赋值 ab 后,b 中的值将放入 a 中,但 b 中的值不变D.在 c 程序中,求余运算符“%”两边的类型相同时才能进行运算解析:解析 选项 A),在赋值表达式中,赋值号的左边只能是变量或者是代表某个存储单元的表达式,不能是任意表达式;在判断选项 B)时首先应该建立这样的概念,整型变量中只能存放整型数,实型变量中能存放实型数,也能存放整型数:选项 C),执行表达式 ab 后,将把变量 b 存储单元中的值赋给变量a,从而覆盖 a 中原有的值,但 b 中原有的值并不改变;选项 D),在

    21、C 程序中,求余运算符“%”两边的类型均为整型数据。9.在“文件包含”预处理语句的使用形式中,当#include 后面的文件名用“(双撇号)括起时,寻找被包含文件的方式是( )。(分数:2.00)A.直接按系统设定的标准方式搜索目录B.先在源程序所在的目录搜索,如没找到,再按系统设定的标准方式搜索 C.仅仅搜索源程序所在目录D.仅仅搜索当前目录解析:解析 本题考查库函数调用的知识点。格式 1:#include文件名,预处理程序在标准目录下查找指定的文件;格式 2:#include“文件名”,预处理程序首先在引用被包含文件的源文件所在的目录下搜索指定的文件,如没找到,再按系统指定的标准目录搜索。

    22、10.下列描述中正确的是( )。(分数:2.00)A.在 C 语言程序中预处理是指完成宏替换和文件包含指定的文件的调用B.预处理指令只能位于 C 源程序文件的首部C.预处理命令可以放在程序中的任何位置 D.预处理命令结尾需要加分号解析:解析 本题考查预处理命令的特点,编译预处理命令的特点:为了区别一般的语句,预处理命令行都必须以“#“号开始,结尾不加分号;预处理命令可以放在程序中的任何位置;在程序中凡是以“#“号开始的语句行都是预处理命令行。11.下列程序的输出结果是( )。main()int a4,b5,c;ifaB) ca*b;printf(“%d,%d,%d/n“,b,a,c);else

    23、cb/a;printf(“%d,%d,%d/n“,b,a,c);(分数:1.00)A.4,5,12B.20C.5,4,20 D.12解析:解析 本题考查 if else 语句。第一个 if 语句,先判断条件,发现 ab 成立,执行下列的复合语句,得 ca *b20,b、a 的值不变。12.在 C 语言程序中,下列说法正确的是( )。(分数:1.00)A.函数的定义和函数的调用均可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套 C.函数的定义可以嵌套,但函数的调用不可以嵌套D.函数的定义和函数的调用均不可以嵌套解析:解析 本题考查函数调用的基本概念。因为函数的结果是个未知量,而函数定义时不

    24、能使用未知量,所以函数定义不可以嵌套,但函数的调用可以嵌套。13.下列叙述中正确的是( )。(分数:1.00)A.一个逻辑数据结构只能有一种存储结构B.逻辑结构属于线性结构,存储结构属于非线性结构C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率 解析:解析 数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式,一种数据结构可以根据需要采用不同的存储结构,常用的存储结构有顺序和链式结构。采用不同的存储结构,其处理的效率是不同的。14.对长度为 n 的线性表进行顺序查找,在最坏的情况下需要比较

    25、的次数为( )。(分数:1.00)A.125B.n/2C.n D.n+1解析:解析 对线性表进行顺序查找时,从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查找到所要找的元素为止。在最坏的情况下,要查找的元素是表的最后一个元素或查找失败,这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为 n。15.在 C 语言中,while 和 dowhile 循环的主要区别是( )。(分数:1.00)A.dowhile 的循环体不能是复合语句B.dowhile 允许从循环体外转到循环体内C.while 的循环体至少被执行一次D.dowhile 的循环体至少被执

    26、行一次 解析:解析 本题考查 while 和 dowhile 循环的区别。while 循环的控制出现在循环体之前,只有当while 后面的表达式的值为非零时,才可能执行循环体;在 dowhile 构成的循环体中,总是先执行一次循环体,然后再求表达式的值,因此无论表达式的值是否为零,循环体至少要被执行一次。16.最简单的交换排序方法是( )。(分数:1.00)A.快速排序B.选择排序C.堆排序D.冒泡排序 解析:解析 交换排序方法是指借助数据元素之间的互相交换进行排序的一种方法,包括冒泡排序和快速排序,冒泡排序是一种最简单的交换排序方法,它通过相邻元素的交换,逐步将线性表变成有序。17.若各选项

    27、中所用变量己正确定义,fun()函数中通过 return 语句返回一个函数值,下列选项中错误的程序是( )。(分数:1.00)A.main() B.float fun(int a,intb) xfun(2,10); main()float fun(int a,intb) xfun(i,j);C.float fun(int,int);D.main()main() B.charc32; C.float ff+1.1;D.doublex12.3E2.5;解析:解析 C 语言规定,可以在定义变量的同时给变量赋初值,称为变量初始化。选项 A)中在给 n1 和 n2 进行赋初值,但变量 n2 没有定义;选

    28、项 C)中定义变量 f 时,不能在赋值表达式的右边出现变量 f 自身,所以选项 C)错误;选项 D)用指数表达式的常量中,字母 E 后面的数应该为整数,而不应该为小数形式。因此,选项 B)正确。20.sizeof(float)是( )。(分数:1.00)A.一种函数调用B.一种函数定义C.一个浮点表达式D.一个整型表达式 解析:解析 sizeof(florat)是 C 语言内部规定的、用于计算单精度型变量(nom)在计算机的内存中所占用的字节数量的函数,返回一个整数值。21.有下列程序:main()int k5;while(-k) printf(“%d“,k-3);printf(“/n“);执

    29、行后的输出结果是( )。(分数:2.00)A.1 B.2C.4D.死循环解析:解析 在程序语句中,k 的初始值为 5,进行第 1 次 while 循环后,k 自减 1 为 4,非 0,执行循环体里的 printf 语句,输出 1,此时 k 的值变为 1。程序执行第 2 次循环时,k 自减 1 变为 0,为假,退出 while 循环语句。所以程序的最后结果为 1。22.若变量已正确定义,要求通过 scanf(“%c%d%c%d,for(i1;i5;i+)Switch(i)case 0:case 3:a+1;case 1:case 2:a+2;default:a+3;printf(“%d“,(分数

    30、:2.00)A.:b 解析:解析 本题考查 switch 语句。当 i1 时,执行 casel,因为没有遇到 break 语句,所以依次往下运行,aa+22,aa+35;当 i2 时,执行 case2,因为没有遇到 break 语句,所以依次往下运行,aa+27,aa+310;当 i3 时,执行 case 3,aa+111,因为没有遇到 break 语句,所以依次往下运行,aa+213;aa+316:当 i4 时,执行 default,aa+319,结束循环。26.若有说明 chars130“abc“,s2“defghi“;,则在使用函数 strcat(s1,s2)后,结果是( )(分数:2.

    31、00)A.s1 的内容更新为 abcdefghiB.s1 的内容更新为 defghi/0C.s1 的内容更新为 defghiabc/0D.s1 的内容更新为 abcdefghi/0 解析:解析 strcat(s1,s2)是把 s2 字符串连接到 s1 字符串的末尾,要保证 s1 能容纳下连接后的字符串。27.在位运算中,操作数每右移两位,其结果相当于( )。(分数:2.00)A.操作数乘以 2B.操作数除以 2C.操作数除以 4 D.操作数乘以 4解析:解析 在位运算中,操作数每右移两位,相当于在操作数的左侧添 0,最右面的两位被移出,即操作数除以 4028.下列合法的声明语句是( )。(分数

    32、:2.00)A.int_abc50; B.double int3+5e2.5;C.long do1L;D.float 3_asd3e-3;解析:解析 C 语言规定,标识符是由字母、数字或下划线组成,并且它的第一个字符必须是字母或者下划线。另外 C 语言规定了一些专用的标识符,它们有着固定的含义,不能更改。int 就是表达变量类型的标识符,它不能再用做变量名和函数名,所以选项 B)不正确。do 是 C 语言的一个关键字,也不能再用做变量名和函数名,所以选项 C)不正确。29.在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送( )。(分数:2.00)A.调用语句B.命令C.口令D

    33、.消息 解析:解析 在面向对象方法中,对象之间通过消息进行通信。消息中只包含传递者的要求,它告诉接受者需要做哪些处理,但并不指示接受者应该怎么完成这些处理,接受者独立决定采用什么方式完成所需的处理。30.下列程序的输出结果是( )。main()int i1,j2,k3;if(i+1(分数:2.00)A.1 2 3B.2 3 4C.2 2 3D.2 3 3 解析:解析 本题考查自增运算符“+”、逻辑与运算符“main()int a1,b2,c3,sum;stunfun(a+,b+,a+b) ,c+);printf(“%d/n“,sum);执行后的输出结果是( )。(分数:2.00)A.6B.7C

    34、.8 D.9解析:解析 函数 fun(intx,inty)的功能是返回两个整型数据的和。在主函数中,变量 a,b,c 的初始值分别为 1,2,3。因此逗号表达式“a+,b+,ab”的值等于 5,表达式 c+的值为 3,调用子函数的表达式为“fun(5,3);”,其返回值等 8。所以变量 sam 的值等于 8。38.若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是( )。(分数:2.00)A.实参与其对应的形参共占存储单元B.只有当实参与其对应的形参同名时才共占存储单元C.实参与其对应的形参分别占用不同的存储单元 D.实参将数据传递给形参后,立即释放原先占用的存储单元解析:解析 本题考

    35、查函数调用时的参数传递。函数的形参是函数定义时由用户定义的形式上的变量,实参是函数调用时,主调函数为被调函数提供的原始数据。在函数调用时,实参和其所对应的形参分别占用不同的存储单元,彼此之间不影响。39.下列二维数组的说明中,不正确的是( )。(分数:2.00)A.floata40,1,8,5,9;B.inta34;C.#define N 5D.inta29.5;float aN3; 解析:解析 C 语言规定,对于二维数组,只可以省略第一个方括号中的常量表达式,而不能省略第二个方括号中的常量表达式;二维数组的一般定义格式:类型说明符数组名常量表达式常量表达式)。40.下列能正确进行字符串赋值的

    36、是( )。(分数:2.00)A.chars5“ABCDE“;B.char s5+A,B,C,D,E),C.char*s;s“ABCDE“; D.char*s;printf(“%SS);解析:解析 字符串存储要有结束符“/0”且要占用一个空间,选项 A)、B)的空间不够;printf 用来输出字符,不能输入字符串。二、填空题(总题数:15,分数:30.00)41.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。(分数:2.00)填空项 1:_ (正确答案:自顶向下)解析:解析 在程序设计时,应先考虑总体,后考虑细节,

    37、逐步使问题具体化,对复杂的问题,应该设计一些子目标作为过渡,上述方法概括为自顶向下,逐步求精。42.注释一般分为序言性注释和 1 注释。(分数:2.00)填空项 1:_ (正确答案:功能性)解析:解析 注释一般分为序言性注释和功能性注释。序言性注释通常位于每个程序的开头部分,给出程序的整体说明;功能性注释一般嵌在源程序体之中,主要描述其后的语句或程序做什么。43.在面向对象的程序设计方法中,类的实例称为 1。(分数:2.00)填空项 1:_ (正确答案:对象)解析:解析 在面向对象的程序设计方法中,类是具有相同的属性或方法的对象的抽象,对象是类的实例。44.某二叉树中度为 2 的结点有 18

    38、个,则该二叉树中有 1 个叶子结点。(分数:2.00)填空项 1:_ (正确答案:19)解析:解析 在任意一棵二叉树中,度数为 0 的结点(即叶子结点)总比度为 2 的结点多一个,因此该二叉树中叶子结点为 18+119。45.数据流图的类型有 1 和事务型。(分数:2.00)填空项 1:_ (正确答案:变换型)解析:解析 典型的数据流类型有两种:变换型和事务型。46.x、y、x 均为 int 型变量,描述“x、y 和 z 中至少有两个为正数”的表达式是 1。(分数:2.00)填空项 1:_ (正确答案:(x0)switch(x)case1:switch(y)case 0:a+;break;ca

    39、se 1:b+;break;case2:a+;b+;break;printf(“a%d,b%d/n“,a,B);(分数:2.00)填空项 1:_ (正确答案:a2,b3)解析:解析 分析程序,程序从 xl 语句开始执行,之后执行第一个 switch 语句,switch(x)switch(1),所以执行 case1,casel 语句中包含一个复合 switch 语句;这时执行第二个 switch 语句,此时 y1,所以 switch(y) switch(1),因此执行 case1,将 b 加 1,得到 b2,遇到 break 语句,退出第二个 switch 语句,则整个 case 1 的复合语句

    40、执行完毕,由于在这个 case 1 的后面没有 break 语句使其退出第一个 switch 语句,所以接着执行下列的 case 2 后面的语句,即将 a、b 各加 1,得到a2,b3。49.C 语言用于结构化程序设计的 3 种基本结构是 1、选择结构和循环结构。(分数:2.00)填空项 1:_ (正确答案:顺序结构)解析:解析 结构化程序有 3 种基本结构,即顺序结构、选择结构(包括 if 语句和 switch 语句)和循环结构(包括 for 语句、while 语句、dowhile 语句)。50.下列循环的循环次数是_。ihtk2;while(k0)printf(“%d“,k);k-;pri

    41、ntf(“/n“);(分数:2.00)填空项 1:_ (正确答案:0)解析:解析 解答本题需要注意表达式“k0”,它是赋值表达式而不是关系表达式,不论 k 为何值,表达式 k0 总会使 k 为 0,所以不能进入循环。51.若有定义 floatb15,*pb;,且数组 b 的首地址为 200H,则 p/13 所指向的数组元素的地址为 1。(分数:2.00)填空项 1:_ (正确答案:252H)解析:解析 要解答本题,首先要明白在对指针进行加、减运算时,数字“1“不是十进制数的“1“,而是指“1“个存储单元长度。1 个存储单元长度占存储空间的多少,应该视具体情况而定,如果存储单元的基类型是 int

    42、 型,则移动 1 个存储单元的长度就是位移 2 个字节;如果存储单元基类型是 float 型,则移动1 个存储单元的长度就是位移 4 个字节。所以旷 13 所指向的数组元素的地址为:200H+(13*4)H252H。52.“printf(“%d/n“,strlen(“/t/“/023/xABC/n“);“语句的输出结果是_。(分数:2.00)填空项 1:_ (正确答案:6)解析:解析 strlen()函数的作用是计算字符串的长度并作为函数的返回值,这里的长度不包括串尾的结束标志/0。/t是转义字符,代表横向跳若干格:/“是转义字符,代表双引号:/023只代表一个字符,而不管转义字符后面有几个字

    43、符;/xAB是以两位十六进制数 AB 表示的 ASCII 码字符,只代表一个字符;/n是转义字符,代表回车换行。5 个字符常量各代表一个字符,再加上字母 C,所以返回的长度是 6。53.设有下列宏定义:#define A2#define B A+3则执行赋值语句:tb *2;t 为血型变量后的值是_。(分数:2.00)填空项 1:_ (正确答案:8)解析:解析 本题考查带参数的宏定义及相关运算。运算过程为:t-B *2A+3 *22+3 *28。54.下列程序的功能是将字符串 s 中所有的字符 c 删除。请填空。#includestdio.hmain()char s80;int i,j;get

    44、s(S);for(ij0;si!/0;i+)if(si!c)_;sj/0;puts(S);(分数:2.00)填空项 1:_ (正确答案:sj+si)解析:解析 循环开始后如果数组 s 中储存值与字符 c 相同,则 i+直接跳过当前值;如果不相同,则将当前值赋予数组指定位置,并通过j+将下标加 1,指向下一元素要存储的位置。55.下列程序的运行结果是_。#includestdio.hfunc(a,B) static int m0,i2;i+m+1;mi+a+b;return(m);main0intk5,m3,p;pfunc(k,m);printf(“%d“,p);pfunc(k,m);printf(“%d/n“,p);(分数:2.00)填空项 1:_ (正确答案:11 23)解析:解析 在主函数中第一次调用 func 子函数时,m0,i2,ii+m+13,mi+a+b3+5+311。因为在子函数中将 m 和 i 定义成了 static 类型,所以在子函数中对 m 和 i 进行的改变,在下一次调用子函数时能进行保存,所以第二次调用子函数时,m11,i3,则ii+m+115,mi+a+b15+5+323。


    注意事项

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




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

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

    收起
    展开