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

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

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

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

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

    1、二级 C语言分类模拟题 515及答案解析(总分:53.50,做题时间:90 分钟)一、选择题(总题数:35,分数:53.50)1.在最坏情况下,堆排序的时间复杂度是_。 A.O(lgo2n) B.O(nlog2n) C.O(n2) D.O(n1.5)(分数:1.00)A.B.C.D.2.若有以下函数: int fun(char *a, char *b) int bk=0; while(*a!=“/0“)break; a+; b+; bk=1; return bk; 此函数的功能是_。(分数:1.00)A.判断 a和 b两个字符串是否相等B.将字符串 a改名为字符串 bC.将字符串变量 a的值赋

    2、给字符串变量 bD.检查字符串 a和 b中是否有“/0“3.有如下程序: #include stdio.h main() int i=1; for(printf(“%d“,i); i4; i+) printf(“%d“, i); printf(“/n“); 程序运行后的输出结果是_。(分数:1.00)A.1123B.123C.0123D.0014.有以下程序: #includestdio.h #includestdlib.h void fun(double*p1,double*p2,double*s) s=(double*)calloc(1,sizeof( double); *s=*p1+*(

    3、p2+1); main() double a2=1.1,2.2,b2=10.0,20.0,*s=a; fun(a,b,s); printf(“%5.2f/n“,*s); 程序运行后的输出结果是_。(分数:1.00)A.21.10B.11.10C.12.10D.1.105.有以下程序: #includestdio.h main() unsigned char a=2, b=4, c=5, d; d=a | b;d printf(“%d/n“,d); 程序运行后的输出结果是_。(分数:1.00)A.3B.4C.5D.66.一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是

    4、_。(分数:1.00)A.1:1联系B.1:m联系C.m:1联系D.m:n联系7.若有定义语句: char*s1=“OK“,*s2=“ok“; 以下选项中,能够输出“OK“的语句是_。(分数:4.00)A.if(strcmp(s1,s2)=0)puts(s1);B.if(strcmp(s1,s2)!=0)puts(s2);C.if(strcmp(s1,s2)=1)puts(s1);D.if(strcmp(s1,s2)=0)puts(s1);8.若有以下程序段,w 和 k都是整型变量: w=k; LB:if(w=0)go to LE; w-; printf(“*“) goto LB; LE; (

    5、分数:2.50)A.for(w=k; w!=0; w-)printf(“*“);B.for(w=k; w; -w)printf(“*“);C.w=k;while(w-!=0)printf(“*“);D.w=k;w+; dow-; printf(“*“); while(w!=0);9.若有说明 int i,j=2,*p= j=19; j+=4) m+; printf(“%d/n“,m); (分数:1.00)A.12B.15C.20D.2513.设计数据库的存储结构属于 _ 。(分数:1.00)A.需求分析B.概念设计C.逻辑设计D.物理设计14.有以下程序: #includestdio.h ma

    6、in() char c25=“6934“,“8254“,*p2; int i,j,s=0; for(i=0;i2;i+)pi=ci; for(i=0;i2;i+) for(j=0;pij0pij=“9“;j+=2) s=10*s+pij-“0“; printf(“%d/n“,s); 程序运行后的输出结果是_。(分数:1.00)A.693825B.69825C.63825D.638515.以下叙述中正确的是 _ 。(分数:1.00)A.构成 C程序的基本单位是函数B.可以在一个函数中定义另一个函数C.main函数必须放在其他函数之前D.C函数定义的格式是 K x*=2; return x; ma

    7、in() int i,s=1; for(i=1;i=3;i+)s*=fun(); printf(“%d/n“,s); 程序运行后的输出结果是_。(分数:1.00)A.0B.10C.30D.6417.结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是_。(分数:1.00)A.三种基本结构不可以嵌套使用B.顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移C.选择结构是根据不同的条件执行不同分支中的语句D.循环结构是根据条件决定是否重复、重复执行多少次循环体语句18.若 a是数值类型,则逻辑表达式(a=1)|(a!=1)的值是_。(分数:1.00)A.1B.0C.2D.

    8、不知道 a的值,不能确定19.阅读以下程序: #includestdio.h main() int case; float printF; printf(“请输入 2个数: “); scanf(“%d%f“, printf(“%d%f/n“, case, printF); 该程序在编译时产生错误,其出错原因是_。(分数:1.00)A.定义语句出错,case 是关键字,不能用作用户自定义标识符B.定义语句出错,printF 不能用作用户自定义标识符C.定义语句无错,scanf 不能作为输入函数使用D.定义语句无错,printf 不能输出 case的值20.下面不属于软件需求分析阶段主要工作的是_

    9、。(分数:1.00)A.需求变更申请B.需求分析C.需求评审D.需求获取21.在长度为 n的有序线性表中进行二分法查找,最坏情况下需要比较的次数是_。 A.O(n) B.O(n2) C.O(log2n) D.O(nlog2n)(分数:2.00)A.B.C.D.22.下列叙述中正确的是_。(分数:2.50)A.break语句只能用于 switch语句体中B.continue语句的作用是使程序的执行流程跳出包含它的所有循环C.break语句只能用在循环体内和 switch语句体内D.在循环体内使用 break语句和 continue语句的作用相同23.执行以下程序后,x 的值为( )。 unsig

    10、ned int x=65535; printf(“%d/n“,x);(分数:1.00)A.65535B.1C.有错误D.-124.下列运算符中优先级最低的算符是_。(分数:1.00)A.|B.!=C.=D.+25.若有以下程序: #include stdio.h main( ) int x=8; for( ;x0; x-) if(x%3) printf(“%d,“,x-); continue; printf(“%d,“,-x); 则程序的运行结果是_。(分数:2.00)A.7,4,2,B.8,7,5,2,C.9,7,6,4,D.8,5,4,2,26.以下程序输出结果为_。 #includest

    11、dio.h #defineADD(x,y) x+y main() int a=15,b=10,c=20,d=5; printf(“%d/n“,ADD(a,b)/ADD(c,d); (分数:2.00)A.34B.20C.80D.6527.有以下程序: #includestdio.h main() char ch25=“6937“, “8254“, *p2; int i, j, s=0; for(i=0; i2; i+) pi=chi; for(i=0; i2; i+) for(j=0; pij“/0“ j+=2) s=10*s+pij-“0“; printf(“%d/n“, s); 程序运行后的

    12、输出结果是(分数:1.00)A.6385B.69825C.63825D.69382528.有以下程序 #includestdio.h int add(int a,int b)return(a+h); main() int k,(*f)(),a=5,b=10; f=add; 则以下函数调用语句错误的是_。(分数:2.00)A.k=*f(a,b);B.k=add(a,b);C.k=(*f)(a,b);D.k=f(a,b);29.以下正确的字符串常量是_。(分数:2.00)A.“/“B.“abc“C.Olympic GamesD.“30.若有以下程序 #includestdio.h #include

    13、stdlib.h #includestring.h typedef struct stu char*name,gender; int score; STU; void f(char*p) p=(char*)malloc(10); strcpy(p,“Qian“); main() STU a=NULL,“m“,290,b; a.name=(char*)malloc(10); strcpy(a.name,“Zhao“); b=a; f(b.name); b.gender=“f“;b.score=350; printf(“%s,%c,%d,“,a.name,a.gender,a.score); pr

    14、intf(“%s,%c,%d/n“,b.name,b.gender,b.score); 则程序的输出结果是_。(分数:2.00)A.Zhao,m,290,Zhao,f,350B.Zhao,m,290,Qian,f,350C.Qian,f,350,Qian,f,350D.Qian,m,290,Qian,f,35031.交换两个变量的值,不允许用临时变量,应该使用下列_位运算符。(分数:2.50)A. for(i=0;in-1;i+) for(j=i+1;jn;j+) if(aiaj)t=ai;ai=aj;aj=t; main() int aa10=1,2,3,4,5,6,7,8,9,10,i;

    15、sort( for(i=0;i10;i+)printf(“%d,“,aai); printf(“/n“); 程序运行后的输出结果是_。(分数:2.50)A.1,2,3,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,8,7,6,5,4,9,10,D.1,2,10,9,8,7,6,5,4,3,33.以下叙述中正确的是_。(分数:2.50)A.数组下标的下限是 1B.数组下标的下限由数组中第一个非零元素的位置决定C.数组下标的下限由数组中第一个被赋值元素的位置决定D.char c1, c2, *c3,c440;是合法的变量定义语句34.设有定义 doub

    16、le a10, *s=a; 以下能够代表数组元素 a3的是_。(分数:2.00)A.(*s)3B.*(s+3)C.*s3D.*s+335.以下叙述中错误的是_。(分数:1.00)A.C程序在运行过程中所有计算都以二进制方式进行B.C程序在运行过程中所有计算都以十进制方式进行C.所有 C程序都需要编译链接无误后才能运行D.C程序中字符变量存放的是字符的 ASCII码值二级 C语言分类模拟题 515答案解析(总分:53.50,做题时间:90 分钟)一、选择题(总题数:35,分数:53.50)1.在最坏情况下,堆排序的时间复杂度是_。 A.O(lgo2n) B.O(nlog2n) C.O(n2) D

    17、.O(n1.5)(分数:1.00)A.B. C.D.解析:解析 若有 n个元素的序列,将元素按顺序组成一棵完全二叉树,当且仅当满足下列条件时称为堆,大根堆是指所有结点的值大于或等于左右子结点的值;小根堆是指所有结点的值小于或等于左右子结点的值。在调整建堆的过程中,总是将根结点值与左、右子树的根结点进行比较,若不满足堆的条件,则将左、右子树根结点值中的大者与根结点值进行交换。堆排序最坏情况下需要 O(nlog 2 n)次比较,所以时间复杂度是 O(nlog 2 n),B 选项正确。2.若有以下函数: int fun(char *a, char *b) int bk=0; while(*a!=“/

    18、0“)break; a+; b+; bk=1; return bk; 此函数的功能是_。(分数:1.00)A.判断 a和 b两个字符串是否相等 B.将字符串 a改名为字符串 bC.将字符串变量 a的值赋给字符串变量 bD.检查字符串 a和 b中是否有“/0“解析:解析 分析程序可知:函数 fun()在字符指针 a和 b未遇到字符“/0“且 a指向的字符串 A长度与b指向的字符串 B长度相同时,遍历 A、B,逐个比较 a指向的字符与 b指向的字符是否相同,所以程序分3种情况:A 的长度与 B的长度不同,返回值为 0;A 的长度与 B的长度相等,但 A中某个位置 i上的字符与 B中位置 i上的字符

    19、不同,返回值为 0;A 的长度与 B的长度相等,且 A中相同位置上的字符与B中相同位置上的字符全部相同,返回值 1。由此可知函数的功能是判断 a和 b指向的两个字符串是否相等。故答案为 A选项。3.有如下程序: #include stdio.h main() int i=1; for(printf(“%d“,i); i4; i+) printf(“%d“, i); printf(“/n“); 程序运行后的输出结果是_。(分数:1.00)A.1123 B.123C.0123D.001解析:解析 for 循环语句格式:for(exp1;exp2;exp3)。exp1 通常用来给循环变量赋初值;ex

    20、p2 通常是循环条件,以便决定是否继续执行循环体;exp3 通常可用来修改循环变量的值。程序执行过程为:for循环开始,输出 i=1,判断 i4 成立,输出 i=1,之后 i=2;判断 i4 成立,输出 i=2,之后 i=3;判断 i4 成立,输出 i=3,之后 i=4;判断 i4 不成立,退出循环。程序运行后的输出结果是 1123,故A选项正确。4.有以下程序: #includestdio.h #includestdlib.h void fun(double*p1,double*p2,double*s) s=(double*)calloc(1,sizeof( double); *s=*p1+

    21、*(p2+1); main() double a2=1.1,2.2,b2=10.0,20.0,*s=a; fun(a,b,s); printf(“%5.2f/n“,*s); 程序运行后的输出结果是_。(分数:1.00)A.21.10B.11.10C.12.10D.1.10 解析:解析 本题考查把数组名作为函数参数,执行 fun函数后,s 的值并没有发生变化,仍然是指向a,所以输出结果为 1.10,选项 D正确。5.有以下程序: #includestdio.h main() unsigned char a=2, b=4, c=5, d; d=a | b;d printf(“%d/n“,d); 程

    22、序运行后的输出结果是_。(分数:1.00)A.3B.4 C.5D.6解析:解析 以下选项中,能够输出“OK“的语句是_。(分数:4.00)A.if(strcmp(s1,s2)=0)puts(s1); B.if(strcmp(s1,s2)!=0)puts(s2);C.if(strcmp(s1,s2)=1)puts(s1);D.if(strcmp(s1,s2)=0)puts(s1);解析:解析 strcmp 函数比较字符串大小,区分大小写,所以当 s1,s2 不相等输出 s1就会输出“OK”,答案选择 A。8.若有以下程序段,w 和 k都是整型变量: w=k; LB:if(w=0)go to LE

    23、; w-; printf(“*“) goto LB; LE; (分数:2.50)A.for(w=k; w!=0; w-)printf(“*“);B.for(w=k; w; -w)printf(“*“);C.w=k;while(w-!=0)printf(“*“); D.w=k;w+; dow-; printf(“*“); while(w!=0);解析:解析 当循环结束时,w 的值应为-1,而其他选项中 w的值为 0,故选择 C选项。9.若有说明 int i,j=2,*p= j=19; j+=4) m+; printf(“%d/n“,m); (分数:1.00)A.12B.15C.20 D.25解析

    24、:13.设计数据库的存储结构属于 _ 。(分数:1.00)A.需求分析B.概念设计C.逻辑设计D.物理设计 解析:解析 物理设计阶段主要解决选择文件存储结构和确定文件存取方法的问题,包括选择存储结构、确定存取方法、选择存取路径、确定数据的存放位置。14.有以下程序: #includestdio.h main() char c25=“6934“,“8254“,*p2; int i,j,s=0; for(i=0;i2;i+)pi=ci; for(i=0;i2;i+) for(j=0;pij0pij=“9“;j+=2) s=10*s+pij-“0“; printf(“%d/n“,s); 程序运行后的

    25、输出结果是_。(分数:1.00)A.693825B.69825C.63825D.6385 解析:解析 本题的意图在于将 c中两个字符串的偶数位置的数字组成一个新数,找到的四个数字分别为 6、3、8、5,组成的数为 6385,所以答案为 D选项。15.以下叙述中正确的是 _ 。(分数:1.00)A.构成 C程序的基本单位是函数 B.可以在一个函数中定义另一个函数C.main函数必须放在其他函数之前D.C函数定义的格式是 K x*=2; return x; main() int i,s=1; for(i=1;i=3;i+)s*=fun(); printf(“%d/n“,s); 程序运行后的输出结果

    26、是_。(分数:1.00)A.0B.10C.30D.64 解析:解析 函数 fun()是 2的次方的运算,而 s*=fun(),所以答案为 64。17.结构化程序由顺序、选择、循环三种基本结构组成,以下相关叙述错误的是_。(分数:1.00)A.三种基本结构不可以嵌套使用 B.顺序结构是按语句在程序中的先后顺序逐条执行,没有分支,没有转移C.选择结构是根据不同的条件执行不同分支中的语句D.循环结构是根据条件决定是否重复、重复执行多少次循环体语句解析:解析 结构化程序主要由 3种基本控制结构组成,顺序结构是最基本的算法结构,当执行由这些语句构成的程序时,将按这些语句在程序中的先后顺序逐条执行,没有分

    27、支,没有转移,没有步骤之间的相互约束,没有对某一步骤的多次使用,B 项正确;选择结构根据不同的条件去执行不同分支中的语句,C项正确;循环结构就是根据各自的条件,使同一组语句重复执行多次,D 项正确。三种结构可以嵌套使用,A 项错误。18.若 a是数值类型,则逻辑表达式(a=1)|(a!=1)的值是_。(分数:1.00)A.1 B.0C.2D.不知道 a的值,不能确定解析:解析 逻辑或“|”要求只要两边的运算对象有一个非零,结果就为真。虽然不知道 a的值,但是若 a为 1,则左边运算对象为 1;若 a的值不是 1,则右边运算对象的值为 1,所以总能保证一边非零,所以结果为真,即 1。19.阅读以

    28、下程序: #includestdio.h main() int case; float printF; printf(“请输入 2个数: “); scanf(“%d%f“, printf(“%d%f/n“, case, printF); 该程序在编译时产生错误,其出错原因是_。(分数:1.00)A.定义语句出错,case 是关键字,不能用作用户自定义标识符 B.定义语句出错,printF 不能用作用户自定义标识符C.定义语句无错,scanf 不能作为输入函数使用D.定义语句无错,printf 不能输出 case的值解析:解析 本题中定义了整形变量 case,但 case是关键字,关键字不能用作

    29、标识符。单精度 printF不是关键字,因为标识符区分大小写。所以选项 A不正确。20.下面不属于软件需求分析阶段主要工作的是_。(分数:1.00)A.需求变更申请 B.需求分析C.需求评审D.需求获取解析:解析 需求分析阶段的工作可概括为 4个方面:需求获取;需求分析;编写需求规格说明书;需求审评。21.在长度为 n的有序线性表中进行二分法查找,最坏情况下需要比较的次数是_。 A.O(n) B.O(n2) C.O(log2n) D.O(nlog2n)(分数:2.00)A.B.C. D.解析:解析 当有序线性表为顺序存储时才能用二分法查找。可以证明的是对于长度为 n的有序线性表,在最坏情况下,

    30、二分法查找只需要比较 log 2 n次,而顺序查找需要比较 n次,因此本题答案为 C。22.下列叙述中正确的是_。(分数:2.50)A.break语句只能用于 switch语句体中B.continue语句的作用是使程序的执行流程跳出包含它的所有循环C.break语句只能用在循环体内和 switch语句体内 D.在循环体内使用 break语句和 continue语句的作用相同解析:解析 break 只能在循环体内和 switch语句内。如果 break出现在循环体的 switch语句体内时,表示跳出该 switch语句体,但并不能中止循环体的执行。23.执行以下程序后,x 的值为( )。 uns

    31、igned int x=65535; printf(“%d/n“,x);(分数:1.00)A.65535B.1C.有错误D.-1 解析:解析 x 变量定义为无符号整型。格式控制符 d是输出带符号的十进制整数,即输出-1。65535 在内存中各位都为 1,作为带符号数输出时最高位为 1即数值为负。在内存中数据都以其补码形式保存,11111111变为原码为 10000001即-1。24.下列运算符中优先级最低的算符是_。(分数:1.00)A.| B.!=C.=D.+解析:解析 C 语言中规定运算符的优先顺序:一元算术运算符-二元算术运算符-关系运算符-逻辑运算符-赋值运算符,A 项中为逻辑运算符,

    32、B 项和 C项都为关系运算符,D 项为一元运算符。因此最低的是 A项。25.若有以下程序: #include stdio.h main( ) int x=8; for( ;x0; x-) if(x%3) printf(“%d,“,x-); continue; printf(“%d,“,-x); 则程序的运行结果是_。(分数:2.00)A.7,4,2,B.8,7,5,2,C.9,7,6,4,D.8,5,4,2, 解析:解析 coutinue 的作用是跳出循环体中剩余的语句而进行下一次循环。第一次循环,x 的值为8,循环体中 if条件成立,打印 x的值 8后将 x减 1,再执行 continue语

    33、句,跳出本次循环。第二次判断循环条件时,x 的值变为 6,不满足循环体内 if条件,执行打印-x 的操作,即打印 5后跳出循环。第三次判断循环条件时 x的值为 4,满足循环体中 if条件。执行打印 x-的操作,即打印 4后将 x值减 1,执行 continue语句,跳出本次循环。第四次判断循环条件时 x的为 2,满足循环体中 if条件,打印 x-,即打印 2后将 x减 1,执行 continue语句,跳出本次循环。在进行 for条件表达式中第三个表达式 x-的操作后 x的值为 0,不满足条件结束循环。所以打印结果为 8,5,4,2,。26.以下程序输出结果为_。 #includestdio.h

    34、 #defineADD(x,y) x+y main() int a=15,b=10,c=20,d=5; printf(“%d/n“,ADD(a,b)/ADD(c,d); (分数:2.00)A.34B.20 C.80D.65解析:27.有以下程序: #includestdio.h main() char ch25=“6937“, “8254“, *p2; int i, j, s=0; for(i=0; i2; i+) pi=chi; for(i=0; i2; i+) for(j=0; pij“/0“ j+=2) s=10*s+pij-“0“; printf(“%d/n“, s); 程序运行后的输

    35、出结果是(分数:1.00)A.6385 B.69825C.63825D.693825解析:28.有以下程序 #includestdio.h int add(int a,int b)return(a+h); main() int k,(*f)(),a=5,b=10; f=add; 则以下函数调用语句错误的是_。(分数:2.00)A.k=*f(a,b); B.k=add(a,b);C.k=(*f)(a,b);D.k=f(a,b);解析:解析 A 选项中*f(a,b)表示调用后返回一个指向整型数据的地址指针,即该函数的返回值为指针类型,因此不能将其赋值给整型变量 k。29.以下正确的字符串常量是_。

    36、(分数:2.00)A.“/“B.“abc“C.Olympic GamesD.“ 解析:解析 本题考查的知识点是字符串常量。在 C语言中,字符串常量是以双引号括起来的字符序列,因此 B选项和 C选项不正确。字符序列中可包含一些转义字符,转义字符都是以“/”开头的。A 选项中包含了 3个“/”,前两个(/)代表了一个“/”字符,后面一个和“”一起(“)被看作一个“”,所以该字符串缺少一个结束的“”,因此不正确。D 选项的两个“”之间没有任何字符,代表的是一个空串,是合法的字符串常量,因此 D选项正确;B 选项的 abc应该使用双引号括起来;C 选项的字母也应该用双引号。30.若有以下程序 #inc

    37、ludestdio.h #includestdlib.h #includestring.h typedef struct stu char*name,gender; int score; STU; void f(char*p) p=(char*)malloc(10); strcpy(p,“Qian“); main() STU a=NULL,“m“,290,b; a.name=(char*)malloc(10); strcpy(a.name,“Zhao“); b=a; f(b.name); b.gender=“f“;b.score=350; printf(“%s,%c,%d,“,a.name,a

    38、.gender,a.score); printf(“%s,%c,%d/n“,b.name,b.gender,b.score); 则程序的输出结果是_。(分数:2.00)A.Zhao,m,290,Zhao,f,350 B.Zhao,m,290,Qian,f,350C.Qian,f,350,Qian,f,350D.Qian,m,290,Qian,f,350解析:解析 f 函数在新开辟的空间操作,并没有改变 b.name的值,所以答案选择 A。31.交换两个变量的值,不允许用临时变量,应该使用下列_位运算符。(分数:2.50)A. for(i=0;in-1;i+) for(j=i+1;jn;j+)

    39、if(aiaj)t=ai;ai=aj;aj=t; main() int aa10=1,2,3,4,5,6,7,8,9,10,i; sort( for(i=0;i10;i+)printf(“%d,“,aai); printf(“/n“); 程序运行后的输出结果是_。(分数:2.50)A.1,2,3,4,5,6,7,8,9,10,B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,8,7,6,5,4,9,10, D.1,2,10,9,8,7,6,5,4,3,解析:解析 程序中 sort函数的功能是对数组中的数据进行从大到小的排序。主函数 main中调用函数sort(,使得数组 aa中从第

    40、 4个元素开始的 5个元素进行从大到小的排序,数组 aa中的元素变为:1,2,3,8,7,6,5,4,9,10。并输出这些元素。33.以下叙述中正确的是_。(分数:2.50)A.数组下标的下限是 1B.数组下标的下限由数组中第一个非零元素的位置决定C.数组下标的下限由数组中第一个被赋值元素的位置决定D.char c1, c2, *c3,c440;是合法的变量定义语句 解析:解析 C 语言规定,数组下标值的下限一律为 0,对于一维数组 amax(max是一个编译时可知的值)来说,它的第一个和最后一个元素分别是 a0和 amax-1。所以,数组下标值的下限与数组中元素的位置无关,故 A、B、C 选项错误。34.设有定义 double a10, *s=a; 以下能够代表数组元素 a3的是_。(分数:2.00)A.(*s)3B.*(s+3) C.*s3D.*s+3解析:解析 *(s+3)指针后移 3个单位,为 a3的值。答案选择 B。35.以下叙述中错误的是_。(分数:1.00)A.C程序在运行过程中所有计算都以二进制方式进行B.C程序在运行过程中所有计算都以十进制方式进行 C.所有 C程序都需要编译链接无误后才能运行D.C程序中字符变量存放的是字符的 ASCII码值解析:解析 C 程序在运行过程中的所有计算都以二进制方式进行,所以 B选项错误。


    注意事项

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




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

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

    收起
    展开