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

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

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

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

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

    1、二级 C语言笔试-472 及答案解析(总分:99.00,做题时间:90 分钟)一、选择题(总题数:40,分数:69.00)1.在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是( )。 A) 逻辑设计 B) 需求分析 C) 详细设计 D) 物理设计(分数:2.00)A.B.C.D.2.下列关于栈叙述正确的是_。A) 栈顶元素最先能被删除 B) 栈顶元素最后才能被删除C) 栈底元素永远不能被删除 D) 以上三种说法都不对(分数:2.00)A.B.C.D.3.下列叙述中正确的是( )。 A) 一个逻辑数据结构只能有一种存储结构 B) 逻辑结构属于线性结构,存储结构属于非线性结构 C

    2、) 一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 D) 一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(分数:1.00)A.B.C.D.4.需求分析阶段的任务是确定A) 软件开发方法 B) 软件开发工具 C) 软件开发费用 D) 软件系统功能(分数:2.00)A.B.C.D.5.软件设计包括软件的结构、数据、接口和过程设计,其中软件的过程设计是指( )。A) 模块间的关系 B) 系统结构部件转换成软件的过程描述C) 软件层次结构 D) 软件开发过程(分数:1.00)A.B.C.D.6.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中

    3、可能有若干个键,它们称为该表的( )。 A) 连接码 B) 关系码 C) 外码 D) 候选码(分数:2.00)A.B.C.D.7.在软件开发中,需求分析阶段产生的主要文档是_。A) 可行性分析报告 B) 软件需求规格说明书C) 概要设计说明书 D) 集成测试计划(分数:2.00)A.B.C.D.8.以下 4个选项中,不能被看作是一条语句的是 _。A) ; B) a=0,b=0,c=0;C) if(aO); D) if(b=0)m=1;n=2;(分数:2.00)A.B.C.D.9.在面向对象方法中, ( )描述的是具有相似属性与操作的一组对象。A) 属性 B) 事件 C) 方法 D) 类(分数:

    4、2.00)A.B.C.D.10.下列所述中,是软件调试技术的是( )。A) 错误推断 B) 集成测试 C) 回溯法 D) 边界值分析(分数:2.00)A.B.C.D.11.在 E-R图中,用来表示实体之间联系的图形是A) 矩形 B) 椭圆形 C) 菱形 D) 平行四边形(分数:2.00)A.B.C.D.12.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS之间的关系是( )。A) DB包括 DBS和 DBMS B) DBMS包括 DB和 DBSC) DBS包括 DB和 DBMS D) 没有任何关系(分数:2.00)A.B.C.D.13.以下选项中不合法的标识符是( )。Aprint

    5、BFORC /*programming*/ printf(“programming!/n“);(B) #include main() /*/ programming /*/ printf(“programming!/n“);(C) #include main() /*/*programming*/*/ printf(“programming!/n“);(D) include main() /*programming*/ printf(“programming!/n“);(分数:1.00)A.B.C.D.17.以下程序的输出结果是main( )int a,i;a=0;for(i=1;i5;i+)

    6、 switch(i)case 0:case 3:a+=2;case 1:case 2:a+=3;default:a+=5;printf(“%d/n“,a);A)31 B)13 C)10 D)20(分数:2.00)A.B.C.D.18.设有以下程序段int x=0,s=0;while(!x!0)s+=+x;printf(“%d“,s);则A) 运行程序段后输出 0 B) 运行程序段后输出 1C) 程序段中的控制表达式是非法的 D) 程序段执行无限次(分数:2.00)A.B.C.D.19.有以下程序main( ) int k=5,n=0;doswitch(k)case 1: case 3:n+=1

    7、;k-;break;default:n=0;k-;case 2: case 4:n+=2;k-;break;printf(“%d“,n);while(k0程序运行后的输出结果是A)235 B)0235 C)02356 D)2356(分数:2.00)A.B.C.D.20.有以下程序:#includestdio.h#includestring.hvoid fun(char*s,int n)char*t;int i,j;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(strlen(si)strlen(sj)t=si;si=sj;sj=t;main()Char*ss=“bcc“,

    8、“bbcc“,“xy“,“aaaacc“,“aabcc“;fun(ss,5);printf(“%s,%s/n“,ss0,ss4);程序的运行结果是_。A) xy,aaaacc B) aaaacc,xy C) bcc,aabcc D) aabcc,bcc(分数:2.00)A.B.C.D.21.有下列函数定义:int fun(double a,double b)return a*b;若下列选项中所用变量都已正确定义并赋值,错误的函数调用是( )。A) if(fun(x,y) B) z=fun(fun(x,y),fun(x,y);C) z=fun(fun(x,y)x,y); D) fun(x,y);

    9、(分数:2.00)A.B.C.D.22.若变量 c为 char类型,能正确判断出 c为小写字母的表达式是( )。A) a=c=z B) (c=a)|(c=z)C) (a=c)and(z=c) D) (c=a),则语句 printf(“%d/n“,*p);的输出结果是_。A) 随机值 B) 0 C) x 的地址 D) p 的地址(分数:2.00)A.B.C.D.26.有以下函数:fun(char * a,char * b)while(*a!=/0)for(i=0;in;i+)for(j=0;jn;j+) *p=aij;p+;main()int *p,a33=1,3,5,2,4,6;p=(int*

    10、)malloc(100);amovep(p,a,3);printf(“%d%d/n“,p2,p5);free(p);A) 56 B) 25 C) 34 D) 程序错误(分数:2.00)A.B.C.D.30.若有说明:int*p1,*p2,n8,m;下列均是正确赋值语句的选项是( )。A) p1p2 B) p1n;C) p1*p2p1; D) p1p2p1;(分数:2.00)A.B.C.D.31.下列程序执行后的输出结果是void rune(int *a,int b)b0=*a+6;main( )int a,b5;a=0;b0=3;fune( B) char s5+A,B,C,D,E),C) c

    11、har*s;s“ABCDE“; D) char*s;printf(“%SS);(分数:2.00)A.B.C.D.34.下列语句中,在字符串 s1和 s2相等时显示“they are Equal“的是( )。A) if(*s1=*s2) puts(“they are Equal“);B) if(!strcmp(s1,s2)puts(“they are Equal“);C) if(s1=s2) Puts(“they are Equal“);D) if(strcmp(s1,s2) )puts(“they are Equal“);(分数:1.00)A.B.C.D.35.在 C语言中,只有在使用时才占用

    12、内存单元的变量,其存储类型是A) auto和 register B) extern和 register C) auto和 static D) static和 register(分数:2.00)A.B.C.D.36.在位运算中,操作数每右移两位,其结果相当于( )。A) 操作数乘以 2 B) 操作数除以 2C) 操作数除以 4 D) 操作数乘以 4(分数:2.00)A.B.C.D.37.下列程序的输出结果是#include “stdio.h“#define M(x,y) x%ymain( )int a,m=12,n=100;a=M(n,m);printf(“%d/n“,a-);A)2 B)3 C

    13、)4 D)5(分数:2.00)A.B.C.D.38.设有定义语句 int (*f)(int);,则以下叙述正确的是A) f是基类型为 int的指针变量B) f是指向函数的指针变量,该函数具有一个 int类型的形参C) f是指向 int类型一维数组的指针变量D) f是函数名,该函数的返回值是基类型为 int类型的地址(分数:2.00)A.B.C.D.39.函数 ftell(fp)的作用是( )。A) 得到 fp所指向文件的当前读写位置B) 初始化流式文件的位置指针C) 移动流式文件的位置指针D) 以上答案均正确(分数:1.00)A.B.C.D.40.有以下函数:fun(char * a,char

    14、 *b)while(*a! =/0)b+;return( *a-*b);该函数的功能是( )。A) 将 b所指字符串连接到 a所指字符串中B)计算 a和 b所指字符串的长度之差C) 将 b所指字符串连接到 a所指字符串后面D) 比较 a和 b所指字符串的大小(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:30.00)41.在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_42.软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中 1 阶段产生“软件需求规格说明书”。(分数:2.00)填空项 1:_43.用树形结构表示实体之间

    15、联系的模型是 1。(分数:2.00)填空项 1:_44.栈中允许进行插入和删除的一端叫做 1。(分数:2.00)填空项 1:_45.诊断和改正程序中错误的工作通常称为 1。(分数:2.00)填空项 1:_46.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是 1。(分数:2.00)填空项 1:_47. 1是数据库设计的核心。(分数:2.00)填空项 1:_48.以下程序运行后的输出结果是_。main()int m=011,n=11;printf(“%d %d/n“,+m,n+); (分数:2.00)填空项 1:_49.以下程序运行后的输出结果是 1。m

    16、ain2int a=1,b=2,c=3;if(c=a) printf(“%d/n“,c);else printf(“%d/n“,b);(分数:2.00)填空项 1:_50.以下程序的输出结果是_。#includestdio.hmain( )int j,a=1,3,5,7,9,11,13,15,*p=a+5;for(j=3;j;j-)switch (j)case 1:case 2: printf(“%d“,*p+);break;case 3: printf(“%d“,*(-p);(分数:2.00)填空项 1:_51.51. 下面程序的运行结果是U /U。#include stdio.hfun(i

    17、nt t,int n)int i,m;if(n=1) return t0;elseif(n=2) | m:fun(t,n-1); return m; main( )int a = 11,4,6,3,8,2,3,5,9,2;printf( “% d /n“ ,fun( a, 10);(分数:2.00)填空项 1:_52.以下程序的输出结果是_。#includestdio.hmain()inta5=2,4,6,8,10,*p;p=a; p+;printf(“%d“,* p);(分数:2.00)填空项 1:_53.53. 以下程序运行后的输出结果是U /U。#include stdio.h#incl

    18、ude string.hchar * ss(char * s)char * p,t;p=s+1:t= *s:whilet * p) *(,p-1) = *p; p+;* (p-1) =t;return s : main ( )char * p,str10 =“ abedefgh“;p = ss(str); printf( “% s /n“. p):(分数:2.00)填空项 1:_54.下列程序中的数组 a包括 10个整数元素,分别将前项和后项之和存入数组 b,并按每行 4个元素输出数组 b。请填空。#includestdiohmain()int a10,b10,i;for(i=0;i10;i+

    19、)scanf(“%d“,a%=9;printf(“%d/n“,a);(分数:2.00)填空项 1:_二级 C语言笔试-472 答案解析(总分:99.00,做题时间:90 分钟)一、选择题(总题数:40,分数:69.00)1.在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是( )。 A) 逻辑设计 B) 需求分析 C) 详细设计 D) 物理设计(分数:2.00)A.B. C.D.解析:解析 软件开发阶段包括需求分析、总体设计、详细设计、编码和测试五个阶段。其中需求分析阶段常用的工具是数据流图和数据字典。2.下列关于栈叙述正确的是_。A) 栈顶元素最先能被删除 B) 栈顶元素最后

    20、才能被删除C) 栈底元素永远不能被删除 D) 以上三种说法都不对(分数:2.00)A. B.C.D.解析:解析 本题考查的知识点是栈的特点。栈是限定只在一端进行插入与删除的线性表,按照“先进后出”或“后进先出”的原则组织数据的。栈顶元素总是最后被插入的元素,从而也是最先能被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。即本题的答案为 A。3.下列叙述中正确的是( )。 A) 一个逻辑数据结构只能有一种存储结构 B) 逻辑结构属于线性结构,存储结构属于非线性结构 C) 一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 D) 一个逻辑数据结构可以有多

    21、种存储结构,且各种存储结构影响数据处理的效率(分数:1.00)A.B.C.D. 解析:解析 数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式,一种数据结构可以根据需要采用不同的存储结构,常用的存储结构有顺序和链式结构。采用不同的存储结构,其处理的效率是不同的。4.需求分析阶段的任务是确定A) 软件开发方法 B) 软件开发工具 C) 软件开发费用 D) 软件系统功能(分数:2.00)A.B.C.D. 解析:解析 需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统的工作概况,明确用户的各种需求,然后在此基础上确定新系

    22、统的功能。选项 A)软件开发方法是在总体设计阶段需完成的任务;选项 B) 软件开发工具是在实现阶段需完成的任务;选项 C)软件开发费用是在可行性研究阶段需完成的任务。5.软件设计包括软件的结构、数据、接口和过程设计,其中软件的过程设计是指( )。A) 模块间的关系 B) 系统结构部件转换成软件的过程描述C) 软件层次结构 D) 软件开发过程(分数:1.00)A.B. C.D.解析:解析 软件设计包括软件结构设计、数据设计、接口设计和过程设计,其中结构设计是定义软件系统各主要部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和操作系统之间及软件与人之间

    23、如何通信;过程设计则是把系统结构部件转换成软件的过程性描述。6.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的( )。 A) 连接码 B) 关系码 C) 外码 D) 候选码(分数:2.00)A.B.C.D. 解析:解析 在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的候选码或候选键。从二维表的所有候选键中选取一个作为用户使用的键称为主键或主码。7.在软件开发中,需求分析阶段产生的主要文档是_。A) 可行性分析报告 B) 软件需求规格说明书C) 概要设计说明书 D) 集成测试计划(分数:2.00)A.B.

    24、C.D.解析:解析 软件需求规格说明书是需求分析阶段最后的成果,它是作为需求解析的一部分而制定的可交付文档。在概要设计阶段,需要编写的文档有:概要设计说明书、数据库说明书、集成测试计划等。8.以下 4个选项中,不能被看作是一条语句的是 _。A) ; B) a=0,b=0,c=0;C) if(aO); D) if(b=0)m=1;n=2;(分数:2.00)A.B.C.D. 解析:解析 选项 D中有两条语句。9.在面向对象方法中, ( )描述的是具有相似属性与操作的一组对象。A) 属性 B) 事件 C) 方法 D) 类(分数:2.00)A.B.C.D. 解析:解析 类(class)描述的是具有相似

    25、属性与操作的一组对象,而一个具体对象则是其对应类的一个实例。10.下列所述中,是软件调试技术的是( )。A) 错误推断 B) 集成测试 C) 回溯法 D) 边界值分析(分数:2.00)A.B.C. D.解析:解析 软件调试技术包括强行排错法、回溯法和原因排除法。边界值分析、错误推断都是黑盒测试的方法。11.在 E-R图中,用来表示实体之间联系的图形是A) 矩形 B) 椭圆形 C) 菱形 D) 平行四边形(分数:2.00)A.B.C. D.解析:解析 E-R 模型可用 E-R图来表示,它具有 3个要素:实体(型)用矩形框表示,框内为实体名称;属性用椭圆形来表示,并用线与实体连接,属性较多时也可以

    26、对实体及其属性单独列表;实体间的联系用菱形框表示;用线将菱形框与实体相连,并在线上标注联系的类型。12.数据库 DB、数据库系统 DBS、数据库管理系统 DBMS之间的关系是( )。A) DB包括 DBS和 DBMS B) DBMS包括 DB和 DBSC) DBS包括 DB和 DBMS D) 没有任何关系(分数:2.00)A.B.C. D.解析:解析 数据库系统(DBS)由数据库(DBS)、数据库管理系统(DBMS)、数据库管理员、硬件平台和软件平台 5个部分组成,可见 DB和 DBMS都是 DBS的组成部分。13.以下选项中不合法的标识符是( )。Aprint BFORC /*program

    27、ming*/ printf(“programming!/n“);(B) #include main() /*/ programming /*/ printf(“programming!/n“);(C) #include main() /*/*programming*/*/ printf(“programming!/n“);(D) include main() /*programming*/ printf(“programming!/n“);(分数:1.00)A.B. C.D.解析:17.以下程序的输出结果是main( )int a,i;a=0;for(i=1;i5;i+) switch(i)c

    28、ase 0:case 3:a+=2;case 1:case 2:a+=3;default:a+=5;printf(“%d/n“,a);A)31 B)13 C)10 D)20(分数:2.00)A. B.C.D.解析:解析 本题考查用于多分支选择的 switch语句,其一般形式为:switch(表达式)case常量表达式 1:语句 1;case常量表达式 2:语句 2;case常量表达式 n:语句 n;default:语句 n+1;其语义是:计算表达式的值,并逐个与其后的常量表达式值进行比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,然后不再进行判断,继续执行后面所有 case后的

    29、语句;如表达式的值与所有 case后的常量表达式均不相等时,则执行 default后的语句。18.设有以下程序段int x=0,s=0;while(!x!0)s+=+x;printf(“%d“,s);则A) 运行程序段后输出 0 B) 运行程序段后输出 1C) 程序段中的控制表达式是非法的 D) 程序段执行无限次(分数:2.00)A.B. C.D.解析:解析 本题中,“!”表示逻辑非运算符,“!”表示不等于运算符,逻辑非运算符比不等于运算符的优先级高。19.有以下程序main( ) int k=5,n=0;doswitch(k)case 1: case 3:n+=1;k-;break;defa

    30、ult:n=0;k-;case 2: case 4:n+=2;k-;break;printf(“%d“,n);while(k0程序运行后的输出结果是A)235 B)0235 C)02356 D)2356(分数:2.00)A. B.C.D.解析:解析 因为变量的初始值分别为“k=5,n=0”,所以程序第一次进入循环时,执行 default语句,这时 k=4,执行“case 4:”这个分支,结果是“n=2,k=3”,打印出 2;然后程序进行第二次循环,这时“n=2,k=3”,执行“case 3:”这个分支,结果是“n=3,k=2”,打印出 3;程序进行第三次循环,这时“n=3,k=2”,执行“ca

    31、se 2:case 4:”这两个分支,结果是“n=5,k=1”,打印出 5,这时因为 n=5不满足 n5的循环条件,因此退出循环,程序运行结束,故输出结果为 235。20.有以下程序:#includestdio.h#includestring.hvoid fun(char*s,int n)char*t;int i,j;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(strlen(si)strlen(sj)t=si;si=sj;sj=t;main()Char*ss=“bcc“,“bbcc“,“xy“,“aaaacc“,“aabcc“;fun(ss,5);printf(“%s

    32、,%s/n“,ss0,ss4);程序的运行结果是_。A) xy,aaaacc B) aaaacc,xy C) bcc,aabcc D) aabcc,bcc(分数:2.00)A. B.C.D.解析:解析 函数 fun的功能是:采用冒泡排序法,对字符串数组 s中 n个字符串按照字符串的长度由小到大进行排序,s0指向长度最小的字符串“xy”,s4指向长度最大的字符串“aaaacc”。21.有下列函数定义:int fun(double a,double b)return a*b;若下列选项中所用变量都已正确定义并赋值,错误的函数调用是( )。A) if(fun(x,y) B) z=fun(fun(x,

    33、y),fun(x,y);C) z=fun(fun(x,y)x,y); D) fun(x,y);(分数:2.00)A.B.C. D.解析:解析 本题考查函数调用时的参数传递。选项 C)中第一个参数的表达式不正确,因此不能得到正确的结果。22.若变量 c为 char类型,能正确判断出 c为小写字母的表达式是( )。A) a=c=z B) (c=a)|(c=z)C) (a=c)and(z=c) D) (c=a),则语句 printf(“%d/n“,*p);的输出结果是_。A) 随机值 B) 0 C) x 的地址 D) p 的地址(分数:2.00)A.B. C.D.解析:解析 p 为整型指针,指向整型

    34、变量 x,输出项为*p,即 x的值,所以输出结果为 0。26.有以下函数:fun(char * a,char * b)while(*a!=/0)”,初值个数为 6,因此数组长度为 6。所以能正确定义一维数组。选项 C的定义中 a是一个字符变量,不能正确定义一维数组。选项 D“int a5=“0123”;”给 int型数组赋字符串初值,显然是错误的。28.有以下程序中若有如下说明和定义语句;char fun(char*);main()char * s=“one“,a5=0,(*f1)()=fun,ch;以下选项中对函数 fun的正确调用语句是 _。A) (*f1)(a); B) *f1(*s);

    35、 C) fun(for(i=0;in;i+)for(j=0;jn;j+) *p=aij;p+;main()int *p,a33=1,3,5,2,4,6;p=(int*)malloc(100);amovep(p,a,3);printf(“%d%d/n“,p2,p5);free(p);A) 56 B) 25 C) 34 D) 程序错误(分数:2.00)A. B.C.D.解析:评析 本题 main函数中定义了指针 P和二维数组 a,通过函数 amovep将数组的值存入指针 P所指向的存储单元中,a 的各元素分别为:a0=1,ao1=3,a02=5,a20=0,a21=0,a22=0。通过 mallo

    36、c()函数给指针分配内存空间,free()函数用于释放指针变量所用内存空间。在主函数中通过 amovep(p,a,3)讽用函数 amovcp,使得实参 P与形参 P,实参数组 a与形参中指向数组的指针变量共用同一存储空间。最后输出 p2,p5为 56。30.若有说明:int*p1,*p2,n8,m;下列均是正确赋值语句的选项是( )。A) p1p2 B) p1n;C) p1*p2p1; D) p1p2p1;(分数:2.00)A.B.C.D. 解析:解析 本题考查指针变量的赋值。选项 A)中,p1、p2 本身都是地址变量,不能再将 p1取地址赋给 p2;选项 B)中,不能将整型数据直接赋值给指针

    37、型数据;选项 C)中,*p2 代表了一个整型变量,而*p2p1 这个语句试图把一个地址值放入一个整型变量中是错误的;选项 D)中指针间的赋值是正确的。31.下列程序执行后的输出结果是void rune(int *a,int b)b0=*a+6;main( )int a,b5;a=0;b0=3;fune( B) char s5+A,B,C,D,E),C) char*s;s“ABCDE“; D) char*s;printf(“%SS);(分数:2.00)A.B.C. D.解析:解析 字符串存储要有结束符“/0”且要占用一个空间,选项 A)、B)的空间不够;printf 用来输出字符,不能输入字符串

    38、。34.下列语句中,在字符串 s1和 s2相等时显示“they are Equal“的是( )。A) if(*s1=*s2) puts(“they are Equal“);B) if(!strcmp(s1,s2)puts(“they are Equal“);C) if(s1=s2) Puts(“they are Equal“);D) if(strcmp(s1,s2) )puts(“they are Equal“);(分数:1.00)A.B. C.D.解析:解析 字符串比较不能用两个等于号(=)来进行比较, 应使用函数 strcmp(s1,s2)来比较。 函数 strcmp(s1,s2)的功能是

    39、:当字符串 s1和 s2相等时,返回值为 0。因此,当表达式!strcmp(s1,s2)=1时,条件成立,执行后面的语句,输出 they are Equal。35.在 C语言中,只有在使用时才占用内存单元的变量,其存储类型是A) auto和 register B) extern和 register C) auto和 static D) static和 register(分数:2.00)A. B.C.D.解析:解析 C 语言中只有自动变量 auto和寄存器变量 register,在使用时才开辟内存空间。36.在位运算中,操作数每右移两位,其结果相当于( )。A) 操作数乘以 2 B) 操作数除以

    40、 2C) 操作数除以 4 D) 操作数乘以 4(分数:2.00)A.B.C. D.解析:解析 在位运算中,操作数每右移两位,相当于在操作数的左侧添 0,最右面的两位被移出,即操作数除以 4。37.下列程序的输出结果是#include “stdio.h“#define M(x,y) x%ymain( )int a,m=12,n=100;a=M(n,m);printf(“%d/n“,a-);A)2 B)3 C)4 D)5(分数:2.00)A.B.C. D.解析:解析 带参数的宏定义命令行形式如下:#define宏名(形参表)替换文本在编译的时候编译预处理程序用“替换文本”来替换宏,即 M(n,m)

    41、被替换为 n%m,之后计算,将计算的结果赋给 a。注意,宏替换是在编译时由预处理程序完成的,宏替换不占用运行的时间,而函数调用是在程序运行时进行的,在函数的调用过程中需要占用一些处理时间。38.设有定义语句 int (*f)(int);,则以下叙述正确的是A) f是基类型为 int的指针变量B) f是指向函数的指针变量,该函数具有一个 int类型的形参C) f是指向 int类型一维数组的指针变量D) f是函数名,该函数的返回值是基类型为 int类型的地址(分数:2.00)A.B. C.D.解析:解析 本题考查的是指向函数的指针。语句 int(*f)(int);是对一个函数的声明,其中 f是指向

    42、该函数的指针,该函数有一个整型的参数,函数返回值类型为整型。39.函数 ftell(fp)的作用是( )。A) 得到 fp所指向文件的当前读写位置B) 初始化流式文件的位置指针C) 移动流式文件的位置指针D) 以上答案均正确(分数:1.00)A. B.C.D.解析:解析位置指针当前值函数 ftell()的基本调用格式为:ftell(fp)。ftell()函数的参数说明:“fp”是指向文件的文件型指针。ftell函数的功能:得到 fp所指向文件的当前读写位置,即位置指针的当前值,如果函数的返回值为-1L,表示出错。40.有以下函数:fun(char * a,char *b)while(*a! =

    43、/0)b+;return( *a-*b);该函数的功能是( )。A) 将 b所指字符串连接到 a所指字符串中B)计算 a和 b所指字符串的长度之差C) 将 b所指字符串连接到 a所指字符串后面D) 比较 a和 b所指字符串的大小(分数:1.00)A.B.C.D. 解析:解析 两个字符串的比较是从左至右对两个字符串对应位置上的字符逐个进行比较,即按其ASCII码值的大小比较,直到出现不同的字符或遇到,/0为止。若全部字符都相同,则两个字符串相等,返回 0;若出现不相同的字符,则返回第一个不相等字符的 ASCII码的差值。fun 函数实现了该功能。二、填空题(总题数:15,分数:30.00)41.

    44、在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_ (正确答案:类)解析:42.软件开发过程主要分为需求分析、设计、编码与测试四个阶段,其中 1 阶段产生“软件需求规格说明书”。(分数:2.00)填空项 1:_ (正确答案:需求分析)解析:解析 需求分析阶段的工作主要包括需求获取、需求分析、编写需求规格说明书和需求评审等 4方面,产生的主要文档为软件需求规格说明书,它可以为用户、分析人员和设计人员之间的交流提供方便,直接支持目标软件系统的确认,也可以作为控制软件开发进程的依据。43.用树形结构表示实体之间联系的模型是 1。(分数:2.00)填空项 1

    45、:_ (正确答案:层次模型)解析:解析 层次模型是最早发展起来的数据库模型。层次模型的基本结构是树形结构。44.栈中允许进行插入和删除的一端叫做 1。(分数:2.00)填空项 1:_ (正确答案:栈顶)解析:解析 栈是限定在表的一端进行插入和删除操作的线性表。在表中,允许插入和删除的一端叫做“栈顶”,不允许插入和删除的一端叫做“栈底”。45.诊断和改正程序中错误的工作通常称为 1。(分数:2.00)填空项 1:_ (正确答案:程序调试)解析:解析 程序调试的任务是诊断年和改正程序中的错误,主要在开发阶段进行,调试程序应该由编制源程序的程序员来完成。46.数据管理技术发展过程经过人工管理、文件系

    46、统和数据库系统三个阶段,其中数据独立性最高的阶段是 1。(分数:2.00)填空项 1:_ (正确答案:数据库系统)解析:解析 在人工管理阶段,数据无法共享,冗余度大,不独立,完全依赖于程序。在文件系统阶段,数据共享性差,冗余度大,独立性也较差。所以数据库系统的数据独立性是最高的。47. 1是数据库设计的核心。(分数:2.00)填空项 1:_ (正确答案:数据模型)解析:解析 数据模型是对客观事物及联系的数据描述,它反映了实体内部及实体与实体之间的联系。因此,数据模型是数据库设计的核心。48.以下程序运行后的输出结果是_。main()int m=011,n=11;printf(“%d %d/n“,+m,n+); (分数:2.00)填空项 1:_ (正确答案:10 11)解析:49.以下程序运行后的输出结果是 1。main2int a=1,b=2,c=3;if(c=a) printf(“%d/n“,c);else printf(“%d/n“,b);(分数:2.00)填空项 1:_ (正确答案:1)解析:50.以下程序的输出结果是_。#includestdio.hmain( )int j,a=1,3,5,7,9,11,13,15,*p=a+5;for(j=3;j;j-)switch (j)case 1:ca


    注意事项

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




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

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

    收起
    展开