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

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

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

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

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

    1、二级 C 语言笔试-343 及答案解析(总分:105.00,做题时间:90 分钟)一、选择题(总题数:50,分数:72.00)1.下面能正确进行字符串赋值操作的是A) chars5=“ABCDE“; B) char s5=A,b,C,D,E;C) char*s;s=“ABCDE“; D) char*s;scanf(“%s“,s);(分数:2.00)A.B.C.D.2.结构化程序设计的核心和基础是( )。A) 结构化分析方法 B) 结构化设计方法C) 结构化设计理论 D) 结构化编程方法(分数:2.00)A.B.C.D.3.有下面的程序段:char str10,ch=“China“;str=ch

    2、; printf(“%s“,str);则运行时_。A) 将输出 China B) 将输出 ChC) 将输出 Chi D) 编译出错(分数:1.00)A.B.C.D.4.若 a 为 int 类型,且其值为 3,则执行完表达式 a+=a-=a*a 后,a 的值是 _ 。A) -3 B) 9 C) -12 D) 6(分数:1.00)A.B.C.D.5.下列不属于软件工程的 3 个要素的是A) 工具 B) 过程 C) 方法 D) 环境(分数:2.00)A.B.C.D.6.以下定义语句中正确的是A) int a=b=0; B) char A=65+1,b=b;C) noat a=1,*b=int x=0

    3、,y=2,z=0;if(c0) x=x+y;if(a=0) if(b0) if(c=0) y=x-y;else if(c0) y=x-y;else z=y;printf(“%d,%d,%d/n“,x,y,z);A) 2,2,0 B) 2,2,2 C) 0,2,0 D) 2,0,2(分数:2.00)A.B.C.D.9.字符串“/“ABCDEF/“/“的长度是( )。A) 15 B) 10 C) 7 D) 8(分数:2.00)A.B.C.D.10.以下程序的输出结果是main( )int c=35;printf(“%d/n“,cc);A)0 B)70 C)35 D)1(分数:2.00)A.B.C.

    4、D.11.有如下程序段int*p,a=10,b=1;p=,则表达式!(x+y)+z-1 for (i=0;iN;i+)bi=aii;main)int xN=1,2,3,4,5,6,7,8,9,10,yN,i;fun(x,y);for (i=0;iN;i+)printf(“%d,“,yi);printf(“/n“);程序的运行结果是()。A) 1,2,3,4, B) 1,0,7,0,C) 1,4,5,9, D) 3,4,8,10,(分数:2.00)A.B.C.D.21.在 C 语言中,函数的隐含存储类别是 ( )AautoBstaticCexternD无存储类别(分数:1.00)A.B.C.D.

    5、22.下列可用于 C 语言用户标识符的一组是_。A) void define WORD B) a3_b3 _123 CarC) For -abc IFCase D) 2a DO sizeof(分数:1.00)A.B.C.D.23.设 x、y、z 和 k 都是 int 型变量,则执行表达式:x=(y=4,Z=16,k=32)后,x 的值为_。A) 4 B) 16 C) 32 D) 52(分数:1.00)A.B.C.D.24.希尔排序法属于_ 类型的排序法。A) 交换类排序法 B) 插入类排序法C) 选择类排序法 D) 建堆排序法(分数:1.00)A.B.C.D.25.以下函数值的类型是_。fun

    6、(float x)float y;y=3*x-4;return y;A) int B) 不确定 C) void D) float(分数:1.00)A.B.C.D.26.设 fp 为指向某二进制文件的指针,且已读到此文件末尾,则函数 feof(fp)的返回值为( )。A) EOF B) 非 0 值C) 0 D) NULL(分数:2.00)A.B.C.D.27.有以下程序main()int k=5;while(-k)printf(“%d“,k-=3);printf(“/n“);执行后的输出结果是_。(A) 1(B) 2(C) 4(D) 死循环(分数:1.00)A.B.C.D.28.以下程序的输出结

    7、果是_。#includestdio.hmain()int a=5,b=4,c=6,d;printf(“%d/n“,d=ab?(ac?a:c):(b);A) 5 B) 4 C) 6 D) 不确定(分数:1.00)A.B.C.D.29.设计软件结构是在软件生命周期的( )。A) 软件定义期 B) 软件开发期 C) 软件维护期 D) 以上三个都不是(分数:2.00)A.B.C.D.30.下列描述中正确的是( )。A) 软件工程只是解决软件项目的管理问题B) 软件工程主要解决软件产品的生产率问题C) 软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D) 软件工程只是解决软件开发过程中的技术问

    8、题(分数:2.00)A.B.C.D.31.有定义语句:char s10;,若要从终端给 s 输入 5 个字符,错误的输入语句是_。A) gets(s0); B) scanf(“%s“,s+1);C) gets(s); D) scanf(“%s“,s1);(分数:2.00)A.B.C.D.32.以下程序的输出结果是_。#inludestdio.hmain()int a=2,b=5;printf(“a=%d,b=%d/n“,a,b);A) a=2,b=5 B) a=%2,b=%5C) a=%d,b=%d D) a=%d,b=%d(分数:1.00)A.B.C.D.33.有以下程序main(int a

    9、rge,char *argv )int n,i=0;while(argv1 i !=/0) n-fun(); i+;printf ( “%d/n“ , n*argc.;int fun ( ) static int s=0;s+=1;return s;假设程序经编译、连接后生成可执行文件 exam.exe, 若键入以下命令exam 123 回车A. 6 B. 8 C. 3 D. 4(分数:1.00)A.B.C.D.34.若有语句:char *line5; ,以下叙述中正确的是( )。A) 定义 line 是一个数组,每个数组元素是一个基类型为 char 的指针变量B) 定义 line 是一个指针

    10、变量,该变量可以指向一个长度为 5 的字符型数组C) 定义 line 是一个指针数组,语句中的*号称为间址运算符D) 定义 line 是一个指向字符型函数的指针(分数:1.00)A.B.C.D.35.下列程序是用来判断数组中特定元素的位置所在的。#includeconic.h#includestdio.hint fun(int *s,int t,int *k)int i;*k=0;for(i=0;it;i+)if(s*ksi)*k=i;returns*k;main()int a10=876,675,896,101,301,401,980,431,451,777,k;fun(a,10,enum

    11、ca1,a2;main()printf(“%d,%d,%d“,sizeof(a) ,sizeof(b) ,sizeof(enum c) );A) 121,0,4 B) 2,2,2 C) 0,2,4 D) 0,2,2(分数:1.00)A.B.C.D.38.有如下程序:main()int x=23;doprintf(“%d“,x-); while(!x);程序运行后的输出结果是( )。A) 321 B) 23C) 不输出任何内容 D) 陷入死循环(分数:1.00)A.B.C.D.39.有以下程序:fun(int x)int p;if(x=0|x=1)return(3);p=x-fun(x-2);r

    12、eturn p;main()printf(“%d/n“,fun(7);执行后的输出结果是_。A) 7 B) 3 C) 2 D) 0(分数:2.00)A.B.C.D.40.软件设计中模块划分应遵循的准则是A) 低内聚低耦合 B) 高内聚低耦合 C) 低内聚高耦合 D) 高内聚高耦合(分数:2.00)A.B.C.D.41.下列说法中,不属于数据模型所描述的内容的是( )。A) 数据结构 B) 数据操作 C) 数据查询 D) 数据约束(分数:1.00)A.B.C.D.42.从一个长度为 n 的顺序表中删除第 i 个元素(1in)时,需向前移动_个元素。An-i Bn-i+1 Cn-i-1 Di(分数

    13、:2.00)A.B.C.D.43.以下程序的功能是计算 s=1+12+123+1234+12345。main()int t=0, s=0, i; for(i=1; i=5; i+)t=i+; s=s+t; printf(“s=d%/n“,s); 则程序运行后的输出结果是A) t B) t *10 C) t*100 D) t+10(分数:2.00)A.B.C.D.44.以下程序的输出结果是( )。#finclude “stdlib.h“fun(int*p,int a33)*p=a22;main()int a33=2,4,6,8,10,12,14,16,18,*p;p=(int*)mallocsi

    14、zeof(int);fun(B. static char str;str=“China“;C. static char str15,str2=“China“;strl=str2;D. static char str1,str2;str2=“China“;strcpy(str1,str2);(分数:2.00)A.B.C.D.49.以下叙述中,不属于面向对象方法的优点的是( )A) 可重用性好 B) 与人类习惯的思维方法一致C) 可维护性好 D) 有助于实现自顶向下、逐步求精(分数:2.00)A.B.C.D.50.组成计算机网络的最大好处是 ( )A进行通话联系B资源共享C发送电子邮件D能使用更多

    15、软件(分数:1.00)A.B.C.D.二、填空题(总题数:20,分数:33.00)51.下列程序的输出结果是_。main()int a=1,b=2;aa+b;ba-b,aa-b;printf(“%d,%d/n“,a,b) ;(分数:1.00)填空项 1:_52.以下程序的输出结果是_。main()int a=5,b=4,c=3,d;d=(abC) ;printf(“%d/n”,D) ;(分数:1.00)填空项 1:_53.实现算法所需的存储单元多少和算法的工作量大小分别称为算法的 1。(分数:1.00)填空项 1:_54.若有如下程序:main()int x=20;if(x10)printf(

    16、“%d“,x-=5);if(x15)printf(“%d“,x);则程序运行后的输出结果是_。(分数:1.00)填空项 1:_55.以下程序运行后的输出结果是_。main()int a,b,c;a=25;b=025;c=0x25;printf(“%d %d %d/n“,a,b,c);(分数:1.00)填空项 1:_56.以下程序的运行结果是_。#include stdio.hlong fib(int g)switch(g)case 0: return 0;case 1:case 2: return1;return(fib(g-1)+fib(g-2);main()long k;k=fib(5);

    17、printf(“k=%5ld/n“,k);(分数:4.00)填空项 1:_57.算法的复杂度主要包括空间复杂度和 1 复杂度。(分数:1.00)填空项 1:_58.若变量 n 的值为 24,则 print 函数共输出_行,最后一行有_个数。void print(int n,int aa)int i;for(i=1;in;i+)printf(“%6d“,aai);if(!(i%5) printf(“/n“);printf(“/n“);(分数:2.00)填空项 1:_59.以下程序运行后的输出结果是_。struct NODEint k;struct NODE*link;main()struct N

    18、ODE m5,*p=m,*q=m+4;int i=0;while(p!=q)p-k=+i;p+;q-k=i+;q-;q-k=i;for(i=0;i5;i+)printf(“%d“,mi.k);printf(“/n“);(分数:2.00)填空项 1:_60.若有说明 char s1=“That girl“,s2=“is beautiful“;则使用函数 strcmp(s1,s2)g,结果是 1。(分数:2.00)填空项 1:_61.若用 0 至 9 之间不同的三个数构成一个三位数,下面程序将统计出共有多少种方法。请填空。#includestdio.hmain()int i,j,k,count=0

    19、;for(i=0;i=9;i+)for(j=0;i=9;j+)if(_)continue;else for(k=0;k=9;k+)if(_)count+;printf(“%d“,count);(分数:1.00)填空项 1:_62.设有下列宏定义:#define A 2#define B (A+3)则执行赋值语句“k=B*20;”(k 为 int 型变量)后,k 的值是_。(分数:2.00)填空项 1:_63.若有如下定义,则该数组的第一维大小为_。int b4=1,2,3,4,5,6,7,8,9);(分数:1.00)填空项 1:_64.以下程序运行后的输出结果是_。main()int a=1,

    20、b=2,c=3;if(c=A) printf(“%d/n“,C) ;else printf(“%d/n“,B) ;(分数:2.00)填空项 1:_65.有以下程序:#includestdio.hstruct STUint num; float TotalScore; ; void f(struct STU p)struct STU s2=20044, 550, 20045, 537; p. num=s1.num; p.TotalScore=s1. TotalScore; main()struct STU s2=20041, 703, 20042, 580; f(s0); printf(“%d%

    21、3.0f/n“, s0. num, s0. TotalScore); 程序运行后的输出结果是_。(分数:2.00)填空项 1:_66.在一个容量为 32 的循环队列中,若头指针 front=3,尾指针 rear=2,则该循环队列中共有 1 个元素。(分数:2.00)填空项 1:_67.在 E-R 图中,图形包括矩形框、菱形框、椭圆框,其中表示实体联系的是 1 框。(分数:2.00)填空项 1:_68.下列程序将二维数组 a 的行和列元素互换后存放到另一个二维数组 b 中。请填空。main()int a23=1,2,3,4,5,b32,i,j;for(i=0;i2;i+)for(j=0;j3;j

    22、+)_;(分数:2.00)填空项 1:_69.按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和_。(分数:2.00)填空项 1:_70.以下函数 creat 用来建立一个带头结点的单向链表,新产生的结点是插在链表头的末尾。单向链表的头指针作为函数值返回。请填空。# includestdiohstruct listchar data;struct list * next;struct list * creat;struct list * h,* p,* q;char ch;h(_)malloc ( sizeof(struct list);pqh;chgetchar();whil

    23、e(ch!?)p(_)mallco(sizeof(struct list);p-datach;q-nextp;qp;chgetchar();p-next/0;_;(分数:1.00)填空项 1:_二级 C 语言笔试-343 答案解析(总分:105.00,做题时间:90 分钟)一、选择题(总题数:50,分数:72.00)1.下面能正确进行字符串赋值操作的是A) chars5=“ABCDE“; B) char s5=A,b,C,D,E;C) char*s;s=“ABCDE“; D) char*s;scanf(“%s“,s);(分数:2.00)A.B.C. D.解析:解析 考查了一维字符数组的定义和初

    24、始化。解题要点 选项 A)和 B)定义的数组空间太小,至少应该为 6 个字符的长度才可以。选项 D)中的指针 s未赋初值,所以指向一个不确定的地址,因而不能用 scanf 输入数据到这一指针所指向的地址中。考点链接 通过赋初值的方式给一维字符数组赋字符串。2.结构化程序设计的核心和基础是( )。A) 结构化分析方法 B) 结构化设计方法C) 结构化设计理论 D) 结构化编程方法(分数:2.00)A.B.C. D.解析:解析 结构化程序设计的核心和基础是结构化设计理论,其中包括:结构化分析方法、结构化设计方法和结构化编程方法。3.有下面的程序段:char str10,ch=“China“;str

    25、=ch; printf(“%s“,str);则运行时_。A) 将输出 China B) 将输出 ChC) 将输出 Chi D) 编译出错(分数:1.00)A.B.C.D. 解析:4.若 a 为 int 类型,且其值为 3,则执行完表达式 a+=a-=a*a 后,a 的值是 _ 。A) -3 B) 9 C) -12 D) 6(分数:1.00)A.B.C. D.解析:解析 C 语言中对赋值运算的运算的运算顺序是自右向左。本题中,计算 a*a 之后,a 的值依然为3,表达式 a*a 的值为 9;a-=9, a=3-9=-6:a+=-6,a=-6+-6=-12。5.下列不属于软件工程的 3 个要素的是

    26、A) 工具 B) 过程 C) 方法 D) 环境(分数:2.00)A.B.C.D. 解析:解析 本题考查了软件工程的基本概念。解题要点 软件工程包括 3 个要素,即方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理和文档生成;过程支持软件开发的各个环节的控制和管理。考点链接 软件生命周期。6.以下定义语句中正确的是A) int a=b=0; B) char A=65+1,b=b;C) noat a=1,*b=int x=0,y=2,z=0;if(c0) x=x+y;if(a=0) if(b0) if(c=0) y=x-y;else if(c0) y=x-y;else z

    27、=y;printf(“%d,%d,%d/n“,x,y,z);A) 2,2,0 B) 2,2,2 C) 0,2,0 D) 2,0,2(分数:2.00)A. B.C.D.解析:解析 本题考查 if else 语句的使用。 先判断第 1 个 if 语句,因为 c=10,所以x=x+y=0+2=2。第 1 个 if 语句,因为 a=-50,所以进入下列的复合语句。经判断发现,复合语句中第 2个汀语句的条件均不满足,不执行任何语句退出,在这个过程中 y 和 x 的值没有发生变化。9.字符串“/“ABCDEF/“/“的长度是( )。A) 15 B) 10 C) 7 D) 8(分数:2.00)A.B. C.

    28、D.解析:解析 本题涉及字符串最基本的 2 个概念:字符串的长度是指字符串中字符的个数,但不包括字符串结束符;以反斜杠“/”开头的特殊字符序列,意思是把反斜杠后面的字符序列转换成特定的含义,而不是原来的含义,不包含在字符串长度之内,“/”连同后面的字符为一个长度。10.以下程序的输出结果是main( )int c=35;printf(“%d/n“,cc);A)0 B)70 C)35 D)1(分数:2.00)A.B.C. D.解析:解析 本题考查按位与“”。因为 1,则表达式!(x+y)+z-1 for (i=0;iN;i+)bi=aii;main)int xN=1,2,3,4,5,6,7,8,

    29、9,10,yN,i;fun(x,y);for (i=0;iN;i+)printf(“%d,“,yi);printf(“/n“);程序的运行结果是()。A) 1,2,3,4, B) 1,0,7,0,C) 1,4,5,9, D) 3,4,8,10,(分数:2.00)A.B. C.D.解析:解析 本题考查的是二维数组的定义、赋初值和对二维数组元素的引用。分析程序可知,函数fun()中的 for 循环作用,是将数组前 4 行中的对角线上的元素,即 a00、a11、a22和 a33分别赋到 b0、b1、b2、b3中。在主函数中首先定义了一个 4 行 4 列的二维数组 x,并初始化为1,2,3,4,5,6

    30、,7,8,9,10。然后调用 fun()函数,将 x 的对角线元素赋给一维数组y。接着通过循环输出数组 y 中的值。从数组 x 的初始化列表中我们可以看出,这 4 个值依次为1,0,7,0。21.在 C 语言中,函数的隐含存储类别是 ( )AautoBstaticCexternD无存储类别(分数:1.00)A. B.C.D.解析:22.下列可用于 C 语言用户标识符的一组是_。A) void define WORD B) a3_b3 _123 CarC) For -abc IFCase D) 2a DO sizeof(分数:1.00)A.B. C.D.解析:解析 C 语言规定标识符只能由字母、

    31、数字和下划线 3 种字符组成,且第一个字符必须为字母或下划线,所以排除 C 和 D。C 语言还规定标识符不能为 C 语言的关键字,从而选项 A(void 是关键字)是错误的。23.设 x、y、z 和 k 都是 int 型变量,则执行表达式:x=(y=4,Z=16,k=32)后,x 的值为_。A) 4 B) 16 C) 32 D) 52(分数:1.00)A.B.C. D.解析:24.希尔排序法属于_ 类型的排序法。A) 交换类排序法 B) 插入类排序法C) 选择类排序法 D) 建堆排序法(分数:1.00)A.B. C.D.解析:解析 希尔排序法的基本思想是:将整个无序序列分割成若干小的子序列分别

    32、进行插入排入。所以希尔排序法属于插入类排序,但它对简单插入排序做了很大的改进。25.以下函数值的类型是_。fun(float x)float y;y=3*x-4;return y;A) int B) 不确定 C) void D) float(分数:1.00)A. B.C.D.解析:解析 C 语言中如果函数前不加任何数据类型时,默认函数的类型为整型,函数的类型就是函数返回值的类型。26.设 fp 为指向某二进制文件的指针,且已读到此文件末尾,则函数 feof(fp)的返回值为( )。A) EOF B) 非 0 值C) 0 D) NULL(分数:2.00)A.B. C.D.解析:解析 ANSI C

    33、 提供的 feof 函数的功能是判断 fp 所指的文件的位置是否已达到文件尾,如果达到文件尾,则 feof 函数的值为 1,否则为 0,表示文件尚未结束。27.有以下程序main()int k=5;while(-k)printf(“%d“,k-=3);printf(“/n“);执行后的输出结果是_。(A) 1(B) 2(C) 4(D) 死循环(分数:1.00)A. B.C.D.解析:28.以下程序的输出结果是_。#includestdio.hmain()int a=5,b=4,c=6,d;printf(“%d/n“,d=ab?(ac?a:c):(b);A) 5 B) 4 C) 6 D) 不确定

    34、(分数:1.00)A.B.C. D.解析:29.设计软件结构是在软件生命周期的( )。A) 软件定义期 B) 软件开发期 C) 软件维护期 D) 以上三个都不是(分数:2.00)A.B. C.D.解析:解析 设计软件结构是在软件概要设计阶段进行的,而概要设计属于软件开发期。30.下列描述中正确的是( )。A) 软件工程只是解决软件项目的管理问题B) 软件工程主要解决软件产品的生产率问题C) 软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D) 软件工程只是解决软件开发过程中的技术问题(分数:2.00)A.B.C. D.解析:解析 软件工程是指将工程化的思想应用于软件的开发、应用和维护

    35、的过程,包括软件开发技术和软件工程管理。31.有定义语句:char s10;,若要从终端给 s 输入 5 个字符,错误的输入语句是_。A) gets(s0); B) scanf(“%s“,s+1);C) gets(s); D) scanf(“%s“,s1);(分数:2.00)A.B.C.D. 解析:解析 字符串的输入有两种方式:使用 scanf()函数和使用 get()函数。采用 scanf()函数输入时,输入项为字符串的地址值,输入字符依次放入以这一地址为起点的存储单元中。选项 C 是正确的,输入字符从数组的第 2 个位置开始存放;选项 D 是错误的,s1是字符,不是地址值。gets()的调

    36、用形式为:gets(str_adr),其中 str_adr 为存放字符串的首地址。选项 A 中,s0为数组的首地址,选项 C 中,s也为数组的首地址因此选项 A 和 C 都是正确的。32.以下程序的输出结果是_。#inludestdio.hmain()int a=2,b=5;printf(“a=%d,b=%d/n“,a,b);A) a=2,b=5 B) a=%2,b=%5C) a=%d,b=%d D) a=%d,b=%d(分数:1.00)A.B.C.D. 解析:33.有以下程序main(int arge,char *argv )int n,i=0;while(argv1 i !=/0) n-f

    37、un(); i+;printf ( “%d/n“ , n*argc.;int fun ( ) static int s=0;s+=1;return s;假设程序经编译、连接后生成可执行文件 exam.exe, 若键入以下命令exam 123 回车A. 6 B. 8 C. 3 D. 4(分数:1.00)A. B.C.D.解析:解析 主函数的第一个参数 alzc 为整形参数,记下从命令行输入的参数的个数;笫二个参数argv 是一个字符型的指针数组,它的每一个元素指向命令行输入的参数字符数。在本例中 argc 的值为2,argv0指向字符串“exam”,argv1指向参数字符串“123”。在 mai

    38、n()函数中,while 循环执行了3 次,调用了 3 次 fun()函数;第一次调用了 fun()函数时,定义了一个静态变量 s 并赋初值 0,加 1 后作为函数值返回,n 的值为 1;第二次调用 ram()函数时,静态变量 s 的值将保留上一次退出时的值 1,再加 1 为 2,作为函数值返回,n 的值为 2;同理第三次调用返回后,n 的值为 3。输出 n*argc 的值为 6 所以,A 选项为所选。34.若有语句:char *line5; ,以下叙述中正确的是( )。A) 定义 line 是一个数组,每个数组元素是一个基类型为 char 的指针变量B) 定义 line 是一个指针变量,该变

    39、量可以指向一个长度为 5 的字符型数组C) 定义 line 是一个指针数组,语句中的*号称为间址运算符D) 定义 line 是一个指向字符型函数的指针(分数:1.00)A. B.C.D.解析:解析 C 语言中nbsp; nbsp; nbsp; 比*优先级高,因此 line 先与5结合,形成 line5形式,这是数组形式,它有 5 个元素,然后再与 line 前面的“*”结合,表示此数组是一个指针数组,每个数组元素都是一个基类型为 char 的指针变量。35.下列程序是用来判断数组中特定元素的位置所在的。#includeconic.h#includestdio.hint fun(int *s,i

    40、nt t,int *k)int i;*k=0;for(i=0;it;i+)if(s*ksi)*k=i;returns*k;main()int a10=876,675,896,101,301,401,980,431,451,777,k;fun(a,10,enum ca1,a2;main()printf(“%d,%d,%d“,sizeof(a) ,sizeof(b) ,sizeof(enum c) );A) 121,0,4 B) 2,2,2 C) 0,2,4 D) 0,2,2(分数:1.00)A.B. C.D.解析:解析 sizeof 函数是取变量所占的存储空间的字节数,标识 a 代表常量 121

    41、:const b=12;,其中数据类型可以缺省,默认为整型;enum ca1,a2;定义了一个枚举类型 enum c,a1,a2 为枚举元素,在 C 编译时,对枚举元素按常量处理,它们的值按定义顺序依次为 0,1。因此它们的字节数均为 2,2,2。38.有如下程序:main()int x=23;doprintf(“%d“,x-); while(!x);程序运行后的输出结果是( )。A) 321 B) 23C) 不输出任何内容 D) 陷入死循环(分数:1.00)A.B. C.D.解析:解析 本题中使用 do-while 循环,每执行一次循环体输出 x 的值后将 x 减 1。当 x=23,执行循环

    42、体输出 x 为 23,X=X-1=23-1=22,判断循环条件是否成立,因为 x=22,!x 的值为 0,终止循环,因此只输出 23。39.有以下程序:fun(int x)int p;if(x=0|x=1)return(3);p=x-fun(x-2);return p;main()printf(“%d/n“,fun(7);执行后的输出结果是_。A) 7 B) 3 C) 2 D) 0(分数:2.00)A.B.C. D.解析:解析 x=7,通过递归调用 fun 函数后得到结果。40.软件设计中模块划分应遵循的准则是A) 低内聚低耦合 B) 高内聚低耦合 C) 低内聚高耦合 D) 高内聚高耦合(分数

    43、:2.00)A.B. C.D.解析:解析 模块划分应遵循的准则包括模块之间的耦合和内聚。一般来说,要求模块之间的耦合尽可能地低,即模块尽可能独立;模块的内聚程度尽可能地高,即遵循高内聚、低耦合的原则。41.下列说法中,不属于数据模型所描述的内容的是( )。A) 数据结构 B) 数据操作 C) 数据查询 D) 数据约束(分数:1.00)A.B.C. D.解析:解析 数据模型所描述的内容有 3 个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型与操作方式。本题答案为 C)。42.从一

    44、个长度为 n 的顺序表中删除第 i 个元素(1in)时,需向前移动_个元素。An-i Bn-i+1 Cn-i-1 Di(分数:2.00)A. B.C.D.解析:43.以下程序的功能是计算 s=1+12+123+1234+12345。main()int t=0, s=0, i; for(i=1; i=5; i+)t=i+; s=s+t; printf(“s=d%/n“,s); 则程序运行后的输出结果是A) t B) t *10 C) t*100 D) t+10(分数:2.00)A.B. C.D.解析:解析 1、12、123、1234、12345 可以写成 1=0 *10+1、12=1 *10+2、123=12*10+3、1234=123*10+4、12345=1234 *10+5,按照这种规律后一项可以等于前一项乘以 10


    注意事项

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




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

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

    收起
    展开