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

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

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

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

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

    1、二级 C语言笔试-317 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.若 x10010111,则表达式(3+(int)(x)intname;st,*#p;p(分数:2.00)A.st.iB.*p.iC.(*p).iD.p-i4.下列字符数组初始化语句中,不正确的是( )。(分数:2.00)A.charcgoodmorning;B.char,c20“goodmoming“;C.charca,b,c,d;D.charc“goodmoming“;5.若执行下列程序时从键盘上输入 2,则输出结果是( )。#inclUdestdio.hmain(

    2、)int a;scanf(“%d“,if(a+3)printf(“%d/n“,A);else printf(“%d/n“,a-);A) 1B.3C.2D.46.若有定义 int a5,b7;,则表达式 a%(b%2)运算后,a 的值为( )。(分数:2.00)A.0B.1C.11D.37.若要用函数 fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件( )。(分数:2.00)A.“wb“B.“wb+“C.“rb+“D.“rb“8.下列选项中,不是一个算法的基本特征的是( )。(分数:2.00)A.完整性B.可行性C.有穷性D.拥有足够的情报9.已定义下列函数:int

    3、 fun(int*p)return *p;)fun函数返回值是( )。(分数:2.00)A.不确定的值B.一个整数C.形参 p中存放的值D.形参 p的地址值10.软件需求分析阶段的工作,可以分为 4个方面:需求获取、需求分析、编写需求规格说明书以及( )。(分数:2.00)A.阶段性报告B.需求评审C.总结D.都不正确11.下列程序的输出结果是( )。#includestdio.hvoidp(int*x)printf(“%d“,+*x);voidmain()int y3;p((分数:1.00)A.3B.4C.2D.512.下列对于软件测试的描述中正确的是( )。(分数:1.00)A.软件测试的

    4、目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误D.软件测试的目的是使程序符合结构化原则13.下列说法错误的是( )。(分数:1.00)A.下列结构体定义时,占据了 5个字节的空间struct studentint num;int age;char sex;B.结构体的成员名可以与程序中的变量名相同C.对结构体中的成员可以单独使用,它的作用相当于普通变量D.结构体可以嵌套定义14.下列语句中,在字符串 s1和 s2相等时显示“they are Equal“的是( )。(分数:1.00)A.if(*s1*s2)B.if(!strcmp(s

    5、1,s2)puts(“they are Equal“); puts(“they are Equal“);C.if(s1s2)D.if(strcmp(s1,s2)Puts(“they are Equal“); puts(“they are Equal“);15.下列工具中为需求分析常用工具的是( )。(分数:1.00)A.PADB.PFDC.N-SD.DFD16.下列程序的运行结果为( )。#includestdio.hvoidabc(char*str) int a,b,i,j;for(ij0;stri!/0;i+)if(stri!a)strj+strj;strj/0;void main()ch

    6、ar Str“abcdef;abc(str);printf(“str%s“,str);(分数:1.00)A.strbcdefB.strabcdefC.straD.strab17.下列选项中不属于结构化程序设计方法的是( )。(分数:1.00)A.自顶向下B.逐步求精C.模块化D.可复用18.结构化分析方法是面向( )的自顶向下、逐步求精进行需求分析的方法。(分数:1.00)A.对象B.数据结构C.数据流D.目标19.下列程序的输出结果是( )。#includestdio.hmain()iut a2,b3,p;pf(a,b) ;printf(“%d“,p);intf(a,b) int c;if(

    7、ab) c1;e1Seif(ab) c0;else(3-1;return(c) ;(分数:1.00)A.-1B.0C.1D.220.已知 i、j、k 为血型变量,若要从键盘输入 2、3、4CR,使 i、j、k 的值分别为 2、 3、4,下列正确的输入语句是( )。(分数:1.00)A.scanf(“%3d,%3d,%3d“,B.scan(“%d,%d,%d“,C.scan(“%do/od%d“,D.scanf(“i%d,j%d,k%d“,21.在下列语句中,其含义为“q 为一个指针的函数,该指针指向整型数据”的定义语句是( )。(分数:2.00)A.int*q;B.int(*q)0;C.int

    8、*q;D.int*q();22.下列表达式中,可以正确表示 或 (分数:2.00)A.(x1)10(x0)B.x1x0C.x1 ORx0D.X1B.intb350,0,0;C.intb41,2,3,4,5,6;D.intb32(1,2),(3,4),(5,6);24.下列循环体的执行次数是( )。#includestdio.hmain()int i,j;for(i0,j1;ij+1;i+1,j-)printf(“%d/n“,j);(分数:2.00)A.3B.2C.1D.025.下列正确的实型常量是( )。(分数:2.00)A.E3.4B.-12345C.2.2eO.8D.426.设变量 x和

    9、y均已正确定义并赋值。下列 if语句中,在编译时将产生错误信息的是(分数:2.00)A.ifx+);B.it(xyC.if(x0)x-D.if(y0);else y+; else x+;27.对线性表进行二分法检索,其前提条件是( )。(分数:2.00)A.线性表以顺序方式存储,并按关键码值排好序B.线性表以顺序方式存储,并按关键码的检索频率排好序C.线性表以链式方式存储,并按关键码值排好序D.线性表以链式方式存储,并按关键码的检索频率排好序28.可以在 C语言程序中用做用户标识符的一组标识符是( )。(分数:2.00)A.voidB.aa123 abcBBN casC.as+b3D.6f-1

    10、23 DoIf SIG29.在数据库设计中,将 E-R图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段30.有下列程序:fun (int x,int y)static int m0,i2;i+m+1;mi+x+y;return m;main()int j1,m1,k;kfun0,m);printf(“%d,“k);kfun0,m);printf(“%d/n“,k);执行后的输出结果是( )。(分数:2.00)A.5,5B.5,11C.11,11D.11,531.下列叙述中错误的是( )。(分数:2.00)A.在 C语言中,函数

    11、中的自动变量可以赋初值,每调用一次赋一次初值B.在 C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容C.在 C语言中,外部变量的隐含类型是自动存储类别D.在 C语言中,函数形参的存储类型是自动(auto)类型的变量32.下列程序中函数 sort()的功能是对数组 a中的数据进行由大到小的排序。#includestdio.hvoid sort(inta,int n)int i,j,t;for(i0;in-1;i+)for(ji+1;n;j+)if(aiaj)tai;aiaj;ajt;main()int a101,2,3,4,5,6,7,8,9,10,i;sort(for(i0;i10;

    12、i+)printf(“%d,“,ai);程序运行后的输出结果是( )。(分数:2.00)A.1,2,3,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.1,8,7,6,5,4,3,2,9,10,D.1,2,10,9,8,7,6,5,4,3,33.若有下列定义(设 int类型变量占 2个字节):int i8,j9;则下列语句:printf(“i%u,j%x/n“.i,j);输出的结果是( )。(分数:2.00)A.i8,j9B.8.9C.89D.i8,i834.下列程序的输出结果是( )。#includestdio.h#defineF(x)2.84+x#defin

    13、ew(y)printf(“%d“,(int(y)#defineP(y)w(y)pmchar(/nmain()int x2;P(F(5)*x);(分数:2.00)A.12B.13C.14D.1635.用链表表示线性表的优点是( )。(分数:2.00)A.便于随机存取B.花费的存储空间较顺序存储少C.便于插入和删除操作D.数据元素的物理顺序和逻辑顺序相同36.下列判断正确的是( )。(分数:2.00)A.char a“ABCD“;等价于 char*a;*a“ABCD“;B.char str10ABCD“;等价于 char str10;str“ABCD“;C.char*s“ABCD“;等价于 cha

    14、r s;*s“ABCD“;D.char c5“ABCD“,d5“ABCD“;等价于 char c5d5“ABCD“;37.设有定义:intk1,m2;noat f7;则下列选项中错误的表达式是( )。(分数:2.00)A.kkkB.-k+C.k%int(f)D.kfm38.变量 m的值为 8,m的地址为 1010,若欲使 p为指向 m的指针变量,则下列赋值正确的是( )。(分数:2.00)A.while(i+7)if(pi%2)j+pi;printf(“%dXn“,j);(分数:2.00)A.42B.45C.56D.6040.关于结构化程序设计原则和方法描述错误的是( )。(分数:2.00)A

    15、.选用的结构只准许有一个入口和一个出口B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现C.不允许使用 GOTO语句D.语言中所没有的控制结构,应该采用前后一致的方法来模拟二、填空题(总题数:15,分数:30.00)41.数据库系统的主要特点为数据集成性、数据的高 1 和低冗余性、数据独立性和数据统一管理和控制。(分数:2.00)填空项 1:_42.数据库的逻辑模型设计阶段的任务是将 1 转换成关系模式。(分数:2.00)填空项 1:_43.在面向对象的方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_44.最简单的交换排序方法是 1。(分数:2.00)填

    16、空项 1:_45.在链表的运算过程中,能够使空表与非空表的运算统一的结构是 1。(分数:2.00)填空项 1:_46.表示“整数 x的绝对值大于 5”时值为“假”的 C语言表达式是 1。(分数:2.00)填空项 1:_47.设 y为血型变量,请写出描述“y 是偶数”的表达式 1。(分数:2.00)填空项 1:_48.下列程序的运行结果是_。main()int x1,y2,Z3;printf(“%d,“xy?y:x);printf(“%d,“,zy?x+:y+);printf(“%d,%d“,x,y);(分数:2.00)填空项 1:_49.下列程序段中循环体的执行次数是_。a15;b0,dob+

    17、2;a-2+b;while(a0);(分数:2.00)填空项 1:_50.语句“int(*ptr)1;“的含义是 2 是指向函数的指针,该函数返回一个 int型数据。(分数:2.00)填空项 1:_51.下列程序的输出结果是_。#includestdio.hint t(int x,int y,int cp,int dp)cpx*x+y *y;如:dpx*-y*y;main()int a1,b8,c7,d9;t(a,b,c,D) ;printf(“%d%d/n“,c,D) ;(分数:2.00)填空项 1:_52./13在内存中占 1个字节,“/12“在内存中占 1 个字节。(分数:2.00)填空

    18、项 1:_53.#define命令出现在程序中函数的外面,宏名的有效范围为 1。(分数:2.00)填空项 1:_54.下列程序段的运行结果是_。char str口“ABCD“,*pstr;printf(“%d/n“,*(p+3);(分数:2.00)填空项 1:_55.下列程序中的数组 a包括 10个整数元素,分别将前项和后项之和存入数组 b,并按每行 4个元素输出数组 b。请填空。#includestdiohmain()int a10,b10,i;for(i0;i10;i+)scanf(“%d“,for(i0;i9;i+)for(i;0;i9;i+)if(i%40)primf(“/n“);pr

    19、intf(“%3d“,bi;(分数:2.00)填空项 1:_二级 C语言笔试-317 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:70.00)1.若 x10010111,则表达式(3+(int)(x)intname;st,*#p;p(分数:2.00)A.st.iB.*p.i C.(*p).iD.p-i解析:解析 本题主要考查结构指针:p B.char,c20“goodmoming“;C.charca,b,c,d;D.charc“goodmoming“;解析:解析 本题考查两个概念:用单引号括起来的一个字符常量只能存放一个字符;C 语言中没有字符串变量,只

    20、能用字符数组来存储字符串。选项 A)中一个单引号内放了若干个字符是错误的;选项 B)和选项 D)中将一个字符串赋值给一个字符数组是允许的。5.若执行下列程序时从键盘上输入 2,则输出结果是( )。#inclUdestdio.hmain()int a;scanf(“%d“,if(a+3)printf(“%d/n“,A);else printf(“%d/n“,a-);A) 1B.3 C.2D.4解析:解析 本题考查 if else语句。程序中首先使用函数 scanf()通过键盘读入 a的值,并通过第 1个 if语句,先判断条件,取 a的值 2和 3比较,然后将 a的值加 1,发现条件成立,执行下列

    21、的 printf语句,输出 a的值 3。6.若有定义 int a5,b7;,则表达式 a%(b%2)运算后,a 的值为( )。(分数:2.00)A.0 B.1C.11D.3解析:解析 本题考查“%“运算符的使用。运算符“%“要求两个运算对象都为整型,其结果是整数除法的余数。本题中表达式 ao%(b%2)等价于 aa%o(b%2)5%(7%2)5%10。7.若要用函数 fopen打开一个新的二进制文件,该文件要既能读也能写,则应以哪种方式打开文件( )。(分数:2.00)A.“wb“B.“wb+“ C.“rb+“D.“rb“解析:解析 本题考查文件使用方式标识符。方式 wb为输出打开一个二进制文

    22、件;方式“wb+”为读写建立一个新的二进制文件;方式“rb+”为读写打开一个二进制文件;方式“rb“为输入打开一个二进制文件。8.下列选项中,不是一个算法的基本特征的是( )。(分数:2.00)A.完整性 B.可行性C.有穷性D.拥有足够的情报解析:解析 作为一个算法,一般应该具有 4个特征:可行性,即考虑到实际的条件能够达到一个满意的结果:确定性,算法中的第一个步骤都必须是有明确定义的;有穷性,一个算法必须在有限的时间内做完;拥有足够的情报。9.已定义下列函数:int fun(int*p)return *p;)fun函数返回值是( )。(分数:2.00)A.不确定的值B.一个整数 C.形参

    23、p中存放的值D.形参 p的地址值解析:解析 由函数 int fun(int *p)return*p;的定义可知,返回值为整型指针变量 p所指向的数据。10.软件需求分析阶段的工作,可以分为 4个方面:需求获取、需求分析、编写需求规格说明书以及( )。(分数:2.00)A.阶段性报告B.需求评审 C.总结D.都不正确解析:解析 需求分析是软件定义时期的最后一个阶段。可以概括为 4个方面:需求获取;需求分析;编写需求规格说明书;需求评审。11.下列程序的输出结果是( )。#includestdio.hvoidp(int*x)printf(“%d“,+*x);voidmain()int y3;p((

    24、分数:1.00)A.3B.4 C.2D.5解析:解析 本题考查函数调用时的参数传递。在函数调用时,形参是指向实参的指针变量,则 printf的执行结果为 3+14。12.下列对于软件测试的描述中正确的是( )。(分数:1.00)A.软件测试的目的是证明程序是否正确B.软件测试的目的是使程序运行结果正确C.软件测试的目的是尽可能多地发现程序中的错误 D.软件测试的目的是使程序符合结构化原则解析:解析 软件测试是为了尽可能多地发现程序中的错误,尤其是发现至今尚未发现的错误。13.下列说法错误的是( )。(分数:1.00)A.下列结构体定义时,占据了 5个字节的空间struct studentint

    25、 num;int age;char sex;B.结构体的成员名可以与程序中的变量名相同C.对结构体中的成员可以单独使用,它的作用相当于普通变量D.结构体可以嵌套定义解析:解析 本题主要考查定义结构体的几个特点:结构的定义明确了结构的组成形式,定义了一种C语言中没有而用户需要的新的数据类型。与其他的数据类型不同,在程序编译的时候结构的定义并不会使系统为该结构分配内存空间,只有在说明结构变量时才分配内存空间;结构体的成员名可以与程序中的变量名相同;结构体中的成员可以单独使用,它的作用相当于普通变量;结构体可以嵌套定义。14.下列语句中,在字符串 s1和 s2相等时显示“they are Equal

    26、“的是( )。(分数:1.00)A.if(*s1*s2)B.if(!strcmp(s1,s2)puts(“they are Equal“); puts(“they are Equal“); C.if(s1s2)D.if(strcmp(s1,s2)Puts(“they are Equal“); puts(“they are Equal“);解析:解析 字符串比较不能用两个等于号()来进行比较,应使用函数 strcmp(s1,s2)来比较。函数 strcmp(s1,s2)的功能:当字符串 s1和 s2相等时,返回值为 0。因此,当表达式!strcmp(s1,s2)1 时,条件成立,执行后面的语句,

    27、输出 they are Equal。15.下列工具中为需求分析常用工具的是( )。(分数:1.00)A.PADB.PFDC.N-SD.DFD 解析:解析 需求分析常用的工具有数据流图(DFD)、数据字典(DD)、判定树和判定表。PAD(问题分析图)、PFD(程序流程图)、N-S(盒式图)都是详细设计的常用工具,不是需求分析的工具。16.下列程序的运行结果为( )。#includestdio.hvoidabc(char*str) int a,b,i,j;for(ij0;stri!/0;i+)if(stri!a)strj+strj;strj/0;void main()char Str“abcdef

    28、;abc(str);printf(“str%s“,str);(分数:1.00)A.strbcdef B.strabcdefC.straD.strab解析:解析 本题考查函数调用时的参数传递。通过函数 abc的执行,将字符串中的字母 a去掉,保留剩下的。由于是通过指针调用,所以改变字符串的结果。17.下列选项中不属于结构化程序设计方法的是( )。(分数:1.00)A.自顶向下B.逐步求精C.模块化D.可复用 解析:解析 结构化程序设计的主要原则概括为自顶向下、逐步求精和限制使用 GOTO语句。18.结构化分析方法是面向( )的自顶向下、逐步求精进行需求分析的方法。(分数:1.00)A.对象B.数

    29、据结构C.数据流 D.目标解析:解析 结构化分析方法是面向数据流进行需求分析的方法,采用自顶向下、逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。19.下列程序的输出结果是( )。#includestdio.hmain()iut a2,b3,p;pf(a,b) ;printf(“%d“,p);intf(a,b) int c;if(ab) c1;e1Seif(ab) c0;else(3-1;return(c) ;(分数:1.00)A.-1 B.0C.1D.2解析:解析 本题考查 if else语句。在 intf(a,B)中:第一个 if语句,先判断条件,发现 a

    30、b 条件不成立,则执行与其配对的 else语句:第二个 if语句,先判断条件,发现 ab 条件不成立,则执行与其配对的 else语句,c-1。20.已知 i、j、k 为血型变量,若要从键盘输入 2、3、4CR,使 i、j、k 的值分别为 2、 3、4,下列正确的输入语句是( )。(分数:1.00)A.scanf(“%3d,%3d,%3d“,B.scan(“%d,%d,%d“, C.scan(“%do/od%d“,D.scanf(“i%d,j%d,k%d“,解析:解析 函数 scan()的调用形式是:scanf(格式字符串,输入项地址表)。其中,“格式字符串”是要输入的变量的格式符:“输入项地址

    31、表”是要输入的变量的地址。若在格式符中插入了其他字符,则在输入时要求按一一对应的位置原样输入这些字符,其中的逗号也必须输入。21.在下列语句中,其含义为“q 为一个指针的函数,该指针指向整型数据”的定义语句是( )。(分数:2.00)A.int*q;B.int(*q)0; C.int*q;D.int*q();解析:解析 本题考查的是指针函数。指针函数定义的基本格式:类型说明符( *函数名)()。其中,类型说明符表示返回的指针值指向的数据类型。22.下列表达式中,可以正确表示 或 (分数:2.00)A.(x1)10(x0) B.x1x0C.x1 ORx0D.X1B.intb350,0,0;C.i

    32、ntb41,2,3,4,5,6;D.intb32(1,2),(3,4),(5,6); 解析:解析 在对二维数组元素赋初值时,可以只对部分元素赋初值,未赋初值的元素自动取 0;C 语言规定,对于二维数组,只可以省略第 1个方括号中的常量表达式,而不能省略第 2个方括号中的常量表达式;赋的初值不能多于事先定义好的数组元素个数。在选项 D)赋值表达式中,对每一维的元素赋初值应用,而不是()。24.下列循环体的执行次数是( )。#includestdio.hmain()int i,j;for(i0,j1;ij+1;i+1,j-)printf(“%d/n“,j);(分数:2.00)A.3B.2C.1 D

    33、.0解析:解析 本题考查 for循环。第一次循环前先判断循环条件,此时 i0,j1,ij+1 成立,循环第一次;第二次循环前先判断循环条件,此时 i1,j0,(j-是先使用 j的值再减 1),ij+1 不成立,结束循环。25.下列正确的实型常量是( )。(分数:2.00)A.E3.4B.-12345 C.2.2eO.8D.4解析:解析 实型常量有两种书写形式:小数形式,它由符号、整数部分、小数点及小数部分组成;指数形式,由十进制小数形式加上指数部分组成,其形式为十进制小数 e指数或十进制小数 E指数。注:e 或 E后面的指数必须是整数,并且在 e或 E的前面必须有数字。本题中,选项 A)中 E

    34、的前面没有数字,因此错误。选项 C)中 0.8不是整数,因此错误。选项 D)中 4是整型常量而不是实型常量。26.设变量 x和 y均已正确定义并赋值。下列 if语句中,在编译时将产生错误信息的是(分数:2.00)A.ifx+);B.it(xyC.if(x0)x- D.if(y0);else y+; else x+;解析:解析 选项 A)和选项 B)在条件判断语句的后面是空语句,什么都不做;在选项 D)中,if 后面是一个复合空语句;而在选项 C)中,在 X-后面少了一个分号,所以程序段在编译时,会出现语法错误。27.对线性表进行二分法检索,其前提条件是( )。(分数:2.00)A.线性表以顺序

    35、方式存储,并按关键码值排好序 B.线性表以顺序方式存储,并按关键码的检索频率排好序C.线性表以链式方式存储,并按关键码值排好序D.线性表以链式方式存储,并按关键码的检索频率排好序解析:解析 对线性表进行二分法检索,要求线性表是按顺序方式存储的,并按关键码值的大小排好序,而不是按关键码的检索频率排序。28.可以在 C语言程序中用做用户标识符的一组标识符是( )。(分数:2.00)A.voidB.aa123 abcBBN cas C.as+b3D.6f-123 DoIf SIG解析:解析 C 语言规定,标识符是由字母、数字或下划线组成,并且它的第一个字符必须是字母或者下划线。29.在数据库设计中,

    36、将 E-R图转换为关系模式的过程属于( )。(分数:2.00)A.需求分析阶段B.逻辑设计阶段 C.概念设计阶段D.物理设计阶段解析:解析 数据库设计阶段主要包括需求分析、概念设计、逻辑设计和物理设计。其中,逻辑设计的主要工作是将 E-R图转换为关系模式。30.有下列程序:fun (int x,int y)static int m0,i2;i+m+1;mi+x+y;return m;main()int j1,m1,k;kfun0,m);printf(“%d,“k);kfun0,m);printf(“%d/n“,k);执行后的输出结果是( )。(分数:2.00)A.5,5B.5,11 C.11,

    37、11D.11,5解析:解析 子函数 fun(intx,inty),将变量 m和 i声明为局部静态变量,因此第 1次调用主函数后,局部静态变量 m和 i的值为 5和 3,第 1次函数调用结束时,它们的值不释放保持不变,所以第 2次调用时,局部静态变量 m和 i的初始值分别为 5和 3,即在执行“i+m+1”时,i 的值为 9,因此,最终 m的值为 11。31.下列叙述中错误的是( )。(分数:2.00)A.在 C语言中,函数中的自动变量可以赋初值,每调用一次赋一次初值B.在 C语言中,在调用函数时,实参和对应形参在类型上只需赋值兼容C.在 C语言中,外部变量的隐含类型是自动存储类别 D.在 C语

    38、言中,函数形参的存储类型是自动(auto)类型的变量解析:解析 外部变量在编译时由系统分配永久的内存空间,所以外部变量的类型不是自动存储类别。32.下列程序中函数 sort()的功能是对数组 a中的数据进行由大到小的排序。#includestdio.hvoid sort(inta,int n)int i,j,t;for(i0;in-1;i+)for(ji+1;n;j+)if(aiaj)tai;aiaj;ajt;main()int a101,2,3,4,5,6,7,8,9,10,i;sort(for(i0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是( )。(分数:2.

    39、00)A.1,2,3,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.1,8,7,6,5,4,3,2,9,10, D.1,2,10,9,8,7,6,5,4,3,解析:解析 本程序中的函数 sort(int a,int n)实现的功能是将数组 a中的前 n个数进行从大到小排序。 sort(则下列语句:printf(“i%u,j%x/n“.i,j);输出的结果是( )。(分数:2.00)A.i8,j9 B.8.9C.89D.i8,i8解析:解析 本题考查函数 printf()的格式。“%x”表示以十六进制输出整型数据;“%u”表示以十进制无符号型输出整型数据。pri

    40、ntf 函数中格式说明符之前插入的任何字符都原样输出。34.下列程序的输出结果是( )。#includestdio.h#defineF(x)2.84+x#definew(y)printf(“%d“,(int(y)#defineP(y)w(y)pmchar(/nmain()int x2;P(F(5)*x);(分数:2.00)A.12 B.13C.14D.16解析:解析 本题考查带参数的宏的定义及相关运算。P(F(5)*x)P(2.84+5*2)P(12.84),调用w(12.84),输出(int)(12.84)12。35.用链表表示线性表的优点是( )。(分数:2.00)A.便于随机存取B.花费

    41、的存储空间较顺序存储少C.便于插入和删除操作 D.数据元素的物理顺序和逻辑顺序相同解析:解析 在链表中因为除了存放数据元素之外,还要存放指针,所以链表花费的存储空间要比顺序表还要多。在插入和删除数据元素时,只需要移动相应的记录指针即可。在链表中数据的物理结构与逻辑结构不一定相同,因为是靠指针来实现对数据的指定的,所以不能进行随机存取。36.下列判断正确的是( )。(分数:2.00)A.char a“ABCD“;等价于 char*a;*a“ABCD“;B.char str10ABCD“;等价于 char str10;str“ABCD“;C.char*s“ABCD“;等价于 char s;*s“A

    42、BCD“;D.char c5“ABCD“,d5“ABCD“;等价于 char c5d5“ABCD“; 解析:解析 a“ABCD“书写错误,因为“”左边不能出现常量;数组名 s是代表 s数组首地址的地址常量,而不是变量;字符串只有在定义时维数可以省略。37.设有定义:intk1,m2;noat f7;则下列选项中错误的表达式是( )。(分数:2.00)A.kkkB.-k+C.k%int(f) D.kfm解析:解析 在 C语言中,求余运算符“%”两边的运算对象都应为整型数据,所以需要对变量 f进行强制类型转换,正确的写法为 k%(int)f。在 C语言中,逻辑运算符与赋值运算符、算术运算符、关系运

    43、算符之间从高到低的运算优先次序是:!(逻辑“非”)、算术运算符、关系运算符、while(i+7)if(pi%2)j+pi;printf(“%dXn“,j);(分数:2.00)A.42B.45 C.56D.60解析:解析 在 C语言中,数组的下标默认为 0,因此数组 p的下标范围为:07。程序循环过程为:第 1次循环 i0,执行循环,并且 i自加,得 i1,因此 pi为 p112,12%20,不执行后面的语句:接着进行第 2次循环,此时 i1,小于 7执行循环,并且 i自加,得 i2,因此 pi为 p213,13%21,执行后面的语句;这样一直到退出循环。最后,i 的值为i13+15+1745。

    44、40.关于结构化程序设计原则和方法描述错误的是( )。(分数:2.00)A.选用的结构只准许有一个入口和一个出口B.复杂结构应该用嵌套的基本控制结构进行组合嵌套来实现C.不允许使用 GOTO语句 D.语言中所没有的控制结构,应该采用前后一致的方法来模拟解析:解析 限制使用 GOTO语句是结构化程序设计的原则和方法之一,但不是绝对不允许使用 GOTO语句。其他 3项为结构化程序设计的原则。二、填空题(总题数:15,分数:30.00)41.数据库系统的主要特点为数据集成性、数据的高 1 和低冗余性、数据独立性和数据统一管理和控制。(分数:2.00)填空项 1:_ (正确答案:共享性)解析:解析 数

    45、据库系统中的数据能被不同的应用程序使用,实现了数据的高度共享,从而降低了数据的冗余,这也是数据库的主要目的。42.数据库的逻辑模型设计阶段的任务是将 1 转换成关系模式。(分数:2.00)填空项 1:_ (正确答案:E-R 图)解析:解析 数据库逻辑设计的任务是将概念模型进一步转化成相应的数据模型。而 E-R图是主要的概念模型,因此数据库的逻辑设计的主要工作是将 E-R图转换成关系模式。43.在面向对象的方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_ (正确答案:类)解析:解析 在面向对象的方法中,把具有相同属性和方法的对象称为类,类是对象的抽象,对象是类

    46、的实例。44.最简单的交换排序方法是 1。(分数:2.00)填空项 1:_ (正确答案:冒泡排序)解析:解析 交换排序是指借助数据元素之间的互相交换进行排序的一种方法。冒泡排序是一种最简单的交换排序方法,它是通过相邻元素之间的相互交换逐步将线性表变成有序。45.在链表的运算过程中,能够使空表与非空表的运算统一的结构是 1。(分数:2.00)填空项 1:_ (正确答案:循环链表)解析:解析 在循环链表中,由于设置了一个头结点,因此在任何情况下,循环链表中至少有一个结点存在,从而使空表与非空表的运算统一。46.表示“整数 x的绝对值大于 5”时值为“假”的 C语言表达式是 1。(分数:2.00)填空项 1:_ (正确答案:(X-5)printf(“%d,“xy?y:x);printf(“%d,“,zy?x+:y+);printf(“%d,%d“,x,y);(分数:2.00)填空项 1:_


    注意事项

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




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

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

    收起
    展开