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

上传人:syndromehi216 文档编号:1326220 上传时间:2019-10-17 格式:DOC 页数:31 大小:89KB
下载 相关 举报
【计算机类职业资格】二级C语言笔试-411及答案解析.doc_第1页
第1页 / 共31页
【计算机类职业资格】二级C语言笔试-411及答案解析.doc_第2页
第2页 / 共31页
【计算机类职业资格】二级C语言笔试-411及答案解析.doc_第3页
第3页 / 共31页
【计算机类职业资格】二级C语言笔试-411及答案解析.doc_第4页
第4页 / 共31页
【计算机类职业资格】二级C语言笔试-411及答案解析.doc_第5页
第5页 / 共31页
点击查看更多>>
资源描述

1、二级 C语言笔试-411 及答案解析(总分:94.50,做题时间:90 分钟)一、选择题(总题数:40,分数:61.00)1.在关系代数运算中,有 5种基本运算,它们是( )。A) 并()、差(-)、交()、除()和笛卡儿积()B) 并()、差(-)、交()、投影()和选择()C) 并()、交()、投影()、选择()和笛卡儿积()D) 并()、差(-)、投影()、选择()和笛卡儿积()(分数:2.00)A.B.C.D.2.下列关于栈的叙述中正确的是( )。A) 在栈中只能插入数据 B) 在栈中只能删除数据C) 栈是先进先出的线性表 D) 栈是先进后出的线性表(分数:1.00)A.B.C.D.3

2、.在软件开发中,需求分析阶段产生的主要文档是_。A) 软件集成测试计划 B)软件详细设计说明书 C)用户手册 D) 软件需求规格说明书(分数:2.00)A.B.C.D.4.在数据库设计中,将 E-R图转换成关系数据模型的过程属于( )。 A) 需求分析阶段 B) 概念设计阶段 C) 逻辑设计阶段 D) 物理设计阶段(分数:2.00)A.B.C.D.5.用树形结构表示实体之间联系的模型是_。A) 关系模型 B) 网状模型 C) 层次模型 D) 以上三个都是(分数:2.00)A.B.C.D.6.下列函数的类型是( )。fun(double x)float y;y=3*x-4;return y;Ai

3、nt B不确定 Cvoid Dfloat(分数:1.00)A.B.C.D.7.以下选项中不合法的标识符是A) ptint B) FOR C) x 的值为_。A) 10 B) 20 C) 30 D) 40(分数:1.00)A.B.C.D.10.执行语句 printf(“%u/n”,+12345)的输出结果是( )。A) 12345 B) 0C) -1 D) 非定值(分数:1.00)A.B.C.D.11.设有条件表达式:(EXP)i+:j-,则以下表达式中与(EXP)完全等价的是_。A) (EXP=0) B) (EXP!=0) C) (EXP=1) D) (EXP!=1)(分数:2.00)A.B.

4、C.D.12.若有条件表达式(exp)? a+:b-,则以下表达式中能完全等价于表达式(exp)的是 ( )。A) (exp= =0) B) (exp! =0) C) (exp= =1) D) (exp! =1)(分数:1.00)A.B.C.D.13.若整型变量 a、b、c、d 中的值依次为 1、4、3、2。则条件表达式 ab?a:cd?c:d 的值是_。A) 1 B) 2 C) 3 D) 4(分数:2.00)A.B.C.D.14.下列写法正确的是( )A) main()int i=3,j;j=5B) main()int i=3;C) main()D) main();(分数:2.00)A.B.

5、C.D.15.若有定义:int a=7;float x=2.5,y=4.7;则表达式 x+a%3,(int)(x+y)%2/4 的值是( )。A) 2.500000 B) 2.750000 C) 3.500000 D) 0.000000(分数:1.00)A.B.C.D.16.以下数组定义中错误的是A) int x3=0;B) int x23=1,2,3,4,5,6;C) int x3=1,2,3,4,5,6;D) intx23=1,2,3,4,5,6;(分数:1.00)A.B.C.D.17.设有以下程序段:int x=0,s=0;whUe( ! x! =0) s+ = +x;printf(“%

6、d“,s);则( )。A) 运行程序段后输出 0 B) 运行程序段后输出 1C) 程序段中的控制表达式是非法的 D) 程序段执行无限次(分数:1.00)A.B.C.D.18.以下不能输出字符 A的语句是(注:字符 A的 ASCII码值为 65,字符 a的 ASCII码值为 97)A)printf(“%c/n“,a-32); B)printf(“%d/n“,A);C)printf(“%c/n“,65); D)printf(“%c/n“,B-1);(分数:2.00)A.B.C.D.19.下列能正确定义字符串的语句是( )。A) char str=/64; B) char str=“kx43“;C)

7、 char str=“; D) char str=“/0“;(分数:2.00)A.B.C.D.20.以下能正确定义二维数组的是( )。A) int a3; B) int a3 =2*3;C) int a3 =; D) int a23 =1,2,3,4:(分数:1.00)A.B.C.D.21.有以下程序:void f(int b)int i;for(i=2;i6;i+)bi*=2;main()int a10=1,2,3,4,5,6,7,8,9,10,i;f(a);for(i=0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是_。A) 1,2,3,4,5,6,7,8,9,1

8、0, B) 1,2,6,8,10,12,7,8,9,10C) 1,2,3,4,10,12,14,16,9,10, D) 1,2,6,8,10,12,14,16,9,10,(分数:2.00)A.B.C.D.22.在 C语言中,下列各选项为不正确的 int类型的常数足( )。A) 32768 B) 0 C) 037 D) 0xAF(分数:1.00)A.B.C.D.23.若要求从键盘读入含有空格字符的字符串,应使用函数A) getc() B) gets() C) getchar() D) scanf()(分数:2.00)A.B.C.D.24.下列函数的运行结果是main()int i=2,p;int

9、 j,k;j=i;k=+i;p=f(j,k);printf(“%d“,p);intf(int a,int b)int c;if(ab)c=1;else if(a=b)c=0;else c=-1;return(c);A) -1 B) 1C) 2 D) 编译出错,无法运行(分数:2.00)A.B.C.D.25.以下程序运行后的输出结果是#includestdio.hmain( )int i=5;doif(i%3=1 if(i%5=2)printf(“*%d“,i);break;i+:while(i!=0);printf(“/n“);A) %7 B) *3*5 C) *5 D) *2*6(分数:2.

10、00)A.B.C.D.26.有以下程序main()char s =“159“,*p;p=s;printf(“%c“,*p+);printf(“%c“,*p+);程序运行后的输出结果是_。(A) 15(B) 16(C) 12(D) 59(分数:2.00)A.B.C.D.27.以下程序(程序左边的数字为附加的行号)_。1#includestr.h2#includestdio.h3main()4 chars=“string“;5puts(s);6strcpy(s,“hello“);7printf(“%3S/n“,s);A) 没有错 B) 第 1行有错 C) 第 6行有错 D) 第 7行有错(分数:2

11、.00)A.B.C.D.28.有以下程序#includestdio.h#includestring.hmain()char a510=“china“,“beijing“,“you“,“tiananmen“,“welcome“);int i,j; char t10;for(i=0;i4;i+)for(j=i+1;j5;j+)if(strcmp(ai,aj)0)strcpy(t,ai);strcpy(ai,aj);strcpy(aj,t);puts(a3);程序运行后的输出结果是( )。A)Beijing B)china C)welcome D)tiananmen(分数:2.00)A.B.C.D.

12、29.以下不能正确定义二维数组的选项是( )。A) int a22=1,2; B) int a2=1,2,3,4;C) int a22=1,2,3; D) int a2=1,2,3,4;(分数:1.00)A.B.C.D.30.下列程序中函数 sort()的功能是对数组 a中的数据进行由大到小的排序。#includestdiohvoidsort(int a,int n)int i,j,t;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(aiaj)t=ai;ai=aj;aj=t;main()int a 10=1,2,3,4,5,6,7,8,9,10,i;sort(for(i:

13、0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是( )。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,(分数:1.00)A.B.C.D.31.有以下程序:#includestring.hmain(int argc,char*argv)int i=1,n=0;while(iargc)n=n+strlen(argvi);i+printf(“%d/n“,n);该程序生成的可执行文件名为:proc.exe,若在运行时输入命令行:

14、proc 123 45 67则该程序的输出结果是_。A) 3 B) 5 C) 7 D) 11(分数:2.00)A.B.C.D.32.有以下程序:#include stdio.hvoid f(int v, int w)int t;t=v; v=w; w=t;main()int x=1,y=3,z=2;if(xy) f(x,y);else if(yz) f(y,z);else f(x,z);printf(“%d,%d,%d/n“,x,y,z);执行后的输出结果( )。A) 1,2,3 B) 3,1,2 C) 1,3,2 D) 2,3,1(分数:1.00)A.B.C.D.33.有以下程序:#incl

15、udestdio.h#includestring.htypedef structchar name9;char sex;float score2;STU;STU f(STU a)STU b=“Zhao“,m,85.0,90.0;int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i,2;i+)a.scorei=b.scorei;return a;main()STU c=“Qian“,f,95.0,92.0,d;d=f(c);printf(“%s,%c,%2.0f%2.0f/n“,d.name,d.sex,d.score0,d.score1);程序的运

16、行结果是_。A) Qian,f,95,92 B) Qian,85,90 C) Zhao,m,85,90 D) Zhao,f,95,92(分数:2.00)A.B.C.D.34.有以下程序:struct Sint n;int a20;;void f(struct S*P)int i,j,t;for(i=0;iP-n-1;i+)for(j=j+1;jP-n-1;j+)if(p-aip-aj)t=P-ai;p-ai=P-aj;p-aj=tmain()int i;struct S s10,2,3,1,6,8,7,5,4,10,9;f(s);for(i=0;is.n;i+)printf(“%d“,s.ai

17、);程序运行后的输出结果是_。A) 3 B) 4 C) 5 D) 6(分数:2.00)A.B.C.D.35.以下程序在 VC6平台上编译运行,程序运行后的输出结果是 #includestdio.hmain() int s, t, A=10; double B=6; s=sizeof(A); f=sizeof(B); printf(“%d, %d/n“, s, t); A) 2,4 B) 4,4 C) 4,8 D) 10,6(分数:2.00)A.B.C.D.36.有以下程序,其中函数 f的功能是将多个字符串按字典顺序排序:#include stdio, h#inelude string, hvo

18、id f(char * p ,int n)char * t;int i,j;for(i=0;in-1;i+)for(j=i+1 ;jn;j + )if(strcmp(pi, pj)0) t =pi;pi =pj ;pj =t;main( )char * p 5 = “abe“.“ aabdfg“.“ abbd“,“ dcdbe“,“ cd“ ;f(P,5 ); printf(“% d/n“, strlen(p1) );程序运行后的输出结果是( )。A) 2 B) 3 C) 60 D) 4(分数:1.00)A.B.C.D.37.有以下程序#includestdio.hvoid fun(int n

19、,int*p)int f1,f2;if(n=1|n=2)*p=1;elsefun(n=1,i=5;i+) p* =i;B) for(i=1;i=5;i+) p=1; p* =i;C) i=1;p=1;while(i=5)p* =i; i+;D) i=1;p=1;dop* =i; i+; while(i=5);(分数:1.00)A.B.C.D.39.设有以下说明语句:struct exint x;float y;char z; example;则下面叙述中不正确的是( )。A) struct是结构体类型的关键字 B) example 是结构体类型名C) x,y,z 都是结构体成员名 D) str

20、uct ex 是结构体类型名(分数:2.00)A.B.C.D.40.线性表 L=(a1,a2,a3,ai,an),下列说法正确的是( )。A) 每个元素都有一个直接前件和直接后件B) 线性表中至少要有一个元素C) 表中诸元素的排列顺序必须是由小到大或由大到小D) 除第一个元素和最后一个元素外,其余每个元素都有一个旦只有一个直接前件和直接后件(分数:1.00)A.B.C.D.二、填空题(总题数:15,分数:33.50)41.问题处理方案的正确而完整的描述称为U /U。(分数:2.00)填空项 1:_42.在关系模型中,把数据看成是二维表,每一个二维表称为一个 1。(分数:2.00)填空项 1:_

21、43.按“先进后出”原则组织数据的数据结构是 1。(分数:2.00)填空项 1:_44.栈的 3种基本运算是:入栈、退栈和 1。(分数:2.00)填空项 1:_45.若 x为 int类型,请写出与!x 等价的 C语言表达式 1。(分数:2.00)填空项 1:_46.下面程序由两个源程序文件:t4.h 和 t4.c组成,程序编译运行结果是_。t4.h的源程序为:#define N 10#define f2(x) (x*N)t4.c的源程序为:#include#define M 8#define f(x) (x)*M)#include “t4.h“main()int i,j;i=f(1+1); j

22、=f2(1+1);printf(“%d%d/n“,i,j);(分数:2.00)填空项 1:_47.SQL语句“SELECT TOP 10 PERCENT *FROM 订单 ORDER BY 金额 DESC”的查询结果是订单中金额 1的 10%的订单信息。(分数:2.00)填空项 1:_48.下面程序的输出是U /Umain()enum ememl=3,em2=1,em3;char*aa=“AA,“BB“,“CC“,“DD“printf(“%s%s%/n“,aaem1,aaem2,aaem3);(分数:2.00)填空项 1:_49.以下程序的输出结果是_。#includestdio.hint f

23、un(int x,int y)static int m=0,i=2;i=i+1:m+=i+x+y;return mmain()int j=4,m=1,k;k=fun(j,m);printf(“%d,“,k);k=fun(j,m);printf(“%d/n“,k)(分数:4.00)填空项 1:_50.函数 de1ete(s,i,n)的作用是从字符串 s中删除从笫 i个字符开始的 n个字符,请填空。void de1ete(chars,int i,int n)int j,k,length=O;whi1e(slength)U /U-i;j=i;if(U /U)k=i+n;if(i+n=length)w

24、hi1e(klength)sj+=sk+;sj=/0; (分数:4.00)填空项 1:_51.下列程序输出的结果是_.int m=17;int fun(int x,int y)int m=3;return(x*y-m);main()int a=5,b=7;printf(“%d/n“,fun(a,b)/m);(分数:2.00)填空项 1:_52.函数调用语句:“fgets(buf,n,fp);”从中指向的文件中读入 n个字符放到 buf字符数组中,函数返回值为 1。(分数:2.00)填空项 1:_53.下列程序的功能是:求出 ss所指字符串中指定字符的个数,并返回此值。 例如,若输入字符串 12

25、3412132,输入字符 1,则输出 3,请填空。 #includeconio.h #includestdio.h #define M 81 int fun(char*ss,char c) int i=0; for(;_;ss+) if(*ss=c)i+; return i; main() char aM,ch; printf(“/nPlease enter a string:“);gets(a); printf(“/nPlease enter a char:“);ch=getchar(); printf(“/nThe number of the char is:%d/n“,fun(a,ch)

26、;(分数:2.00)填空项 1:_54.设有下列宏定义:#define A 2#define B A+3则执行赋值语句;t=B*2;t 为 int型变量后的值是_。(分数:1.50)填空项 1:_55.在宏定义#define P13.14159 中,用宏名 PI代替一个 1。(分数:2.00)填空项 1:_二级 C语言笔试-411 答案解析(总分:94.50,做题时间:90 分钟)一、选择题(总题数:40,分数:61.00)1.在关系代数运算中,有 5种基本运算,它们是( )。A) 并()、差(-)、交()、除()和笛卡儿积()B) 并()、差(-)、交()、投影()和选择()C) 并()、交

27、()、投影()、选择()和笛卡儿积()D) 并()、差(-)、投影()、选择()和笛卡儿积()(分数:2.00)A.B.C.D. 解析:解析 并、差、笛卡儿积、投影和选择是 5种基本的运算,其他运算即交、连接和除,均可以通过 5种基本的运算来表达。2.下列关于栈的叙述中正确的是( )。A) 在栈中只能插入数据 B) 在栈中只能删除数据C) 栈是先进先出的线性表 D) 栈是先进后出的线性表(分数:1.00)A.B.C.D. 解析:解析 栈是限定在一端进行插入与删除的线性表,是按照“先进后出”或“后进先出”的原则组织数据的,因此,栈也被称为“先进后出”表或“后进先出”表。3.在软件开发中,需求分析

28、阶段产生的主要文档是_。A) 软件集成测试计划 B)软件详细设计说明书 C)用户手册 D) 软件需求规格说明书(分数:2.00)A.B.C.D. 解析:解析 本题考查的知识点是软件需求分析。软件需求规格说明书是需求分析阶段的最后成果,是软件开发中的重要文档之一。4.在数据库设计中,将 E-R图转换成关系数据模型的过程属于( )。 A) 需求分析阶段 B) 概念设计阶段 C) 逻辑设计阶段 D) 物理设计阶段(分数:2.00)A.B.C. D.解析:解析 逻辑结构设计的任务:概念结构是各种数据模型的共同基础,为了能够用某一 DBMS实现用户需求,还必须将概念结构进一步转化为相应的数据模型,这正是

29、数据库逻辑结构设计所要完成的任务。它包捅从 E-R图向关系模式转换和逻辑模式规范化及调整、实现。5.用树形结构表示实体之间联系的模型是_。A) 关系模型 B) 网状模型 C) 层次模型 D) 以上三个都是(分数:2.00)A.B.C. D.解析:解析 用树形结构表示实体类型及实体间联系的数据模型称为层次模型,用有向图结构表示实体类型及实体问联系的数据模型称为网状模型,用二维表格结构表示实体及其联系的数据模型称为关系模型。6.下列函数的类型是( )。fun(double x)float y;y=3*x-4;return y;Aint B不确定 Cvoid Dfloat(分数:1.00)A. B.

30、C.D.解析:解析 本题考查函数值的类型。在函数调用时,尽管 y的类型是 float,x 的类型是 double,但是因为函数定义时没有指定类型说明,系统默认函数值的类型为 int型,所以计算后的 y的类型是 int型。7.以下选项中不合法的标识符是A) ptint B) FOR C) x 的值为_。A) 10 B) 20 C) 30 D) 40(分数:1.00)A.B. C.D.解析:评析 本题 x=10,表达式“x+=x-=x-x;”的求解步骤如下:先进行 x-=x-x的运算,相当于 x=x-(x-x=x=10:再进行 x+=x的运算,即 x=x+x=20。10.执行语句 printf(“

31、%u/n”,+12345)的输出结果是( )。A) 12345 B) 0C) -1 D) 非定值(分数:1.00)A. B.C.D.解析:解析 “%u”表示输出无符号的整数(注意;如果输出值前有符号,将自动转化为相应的无符号数输出)。11.设有条件表达式:(EXP)i+:j-,则以下表达式中与(EXP)完全等价的是_。A) (EXP=0) B) (EXP!=0) C) (EXP=1) D) (EXP!=1)(分数:2.00)A.B. C.D.解析:解析 本题考查的重点是条件表达式的用法。条件表达式首先判断“(EXP)”是真值还是假值。而在 C语言中,真值是任意非零值,也可以是负数,而假值是零。

32、因此,与条件表达式中“(EXP)”完全等价的是选项 B。12.若有条件表达式(exp)? a+:b-,则以下表达式中能完全等价于表达式(exp)的是 ( )。A) (exp= =0) B) (exp! =0) C) (exp= =1) D) (exp! =1)(分数:1.00)A.B. C.D.解析:解析 条件表达式的一般形式为:表达式 1?表达式 2:表达式 3其求解顺序是:先求解表达式 1,若为非 0(真),则求解表达式 2,此时表达式 2的值就作为整个条件表达式的值;若表达式 1的值为 0(假),则求解表达式 3,表达式 3的值就是整个条件表达式的值。13.若整型变量 a、b、c、d 中

33、的值依次为 1、4、3、2。则条件表达式 ab?a:cd?c:d 的值是_。A) 1 B) 2 C) 3 D) 4(分数:2.00)A. B.C.D.解析:解析 本题的考点是 C语言的三日运算符“:”。由于 a、b、c、d 的初值依次为 1、4、3、2,对于“ab?a:cd?c:d”表达式,可以看成“(ab)?a:(cd?c:d)”,ab 为真,执行紧随 ab 后的?的表达式,也就是 a。条件表达式的值为 1。14.下列写法正确的是( )A) main()int i=3,j;j=5B) main()int i=3;C) main()D) main();(分数:2.00)A.B.C.D. 解析:

34、解析 本题考查语句的基本构成。选项 A中 i=5后面少了一个分号;选项 B中少了“”;选项 C不是一个完整的函数定义格式,一个完整的函数定义格式还包括一对花括号;选项 D正确,是一个空语句。15.若有定义:int a=7;float x=2.5,y=4.7;则表达式 x+a%3,(int)(x+y)%2/4 的值是( )。A) 2.500000 B) 2.750000 C) 3.500000 D) 0.000000(分数:1.00)A. B.C.D.解析:解析 x+y 的值为实型 7.200000,经强制类型转化成整型 7。a%3 的值为 1,1*7 的值为 7,7%2 的值为 1。1/4 的

35、值为 0,而非 0.25,再与实型 x相加,最终得结果为 2.500000。16.以下数组定义中错误的是A) int x3=0;B) int x23=1,2,3,4,5,6;C) int x3=1,2,3,4,5,6;D) intx23=1,2,3,4,5,6;(分数:1.00)A.B. C.D.解析:解析 二维数组的初始化有以下几种形式:分行进行初始化;不分行的初始化;部分数组元素初始化;省略第一维的定义,不省略第二维的定义。选项 B)等号右边分了 3行,大于等号左边数组的行数 2。17.设有以下程序段:int x=0,s=0;whUe( ! x! =0) s+ = +x;printf(“%

36、d“,s);则( )。A) 运行程序段后输出 0 B) 运行程序段后输出 1C) 程序段中的控制表达式是非法的 D) 程序段执行无限次(分数:1.00)A.B. C.D.解析:解析 本题中,逻辑非“!”运算符比不等于“! =”运算符优先级高,因此第一次循环时 !x!=0的运算结果为真,s 的运算结果为 1;第二次循环时!x!=0 的运算结果为假,循环结束,输出 s的结果为1。18.以下不能输出字符 A的语句是(注:字符 A的 ASCII码值为 65,字符 a的 ASCII码值为 97)A)printf(“%c/n“,a-32); B)printf(“%d/n“,A);C)printf(“%c/

37、n“,65); D)printf(“%c/n“,B-1);(分数:2.00)A.B. C.D.解析:解析 在选项 B)的输出函数中,大写字符A以整型数据的形式输出。19.下列能正确定义字符串的语句是( )。A) char str=/64; B) char str=“kx43“;C) char str=“; D) char str=“/0“;(分数:2.00)A.B.C.D. 解析:解析 字符串常量是用一对双括号括起来的一串字符。它用字符数组来存放,不能用一对大括号对括起来。20.以下能正确定义二维数组的是( )。A) int a3; B) int a3 =2*3;C) int a3 =; D)

38、 int a23 =1,2,3,4:(分数:1.00)A. B.C.D.解析:解析 本题考查二维数组的定义。选项 B)不符合二维数组的定义规范;选项 C)企图给数组赋空值,错误;选项 D)定义的 a2)3说明 a是一个 2行 3列的数组,而初始化却赋了 3行,所以选项 D)错误。21.有以下程序:void f(int b)int i;for(i=2;i6;i+)bi*=2;main()int a10=1,2,3,4,5,6,7,8,9,10,i;f(a);for(i=0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是_。A) 1,2,3,4,5,6,7,8,9,10,

39、B) 1,2,6,8,10,12,7,8,9,10C) 1,2,3,4,10,12,14,16,9,10, D) 1,2,6,8,10,12,14,16,9,10,(分数:2.00)A.B. C.D.解析:解析 本题在调用函数时,实参是数组名也是把数组 a的首地址传递给形参,由条件 i=2且 i6得出函数将列以 a2开始的 4个元素(3、4、5、6)进行乘 2操作,结果分别是 a2=6、a3=8、a4=10、a5=12。a0、a1、a6、a7、a8、a9的值没有发生变化。22.在 C语言中,下列各选项为不正确的 int类型的常数足( )。A) 32768 B) 0 C) 037 D) 0xAF

40、(分数:1.00)A. B.C.D.解析:解析 本题考查 int类型的范围问题。C 语言中 int类型的常数的范围是:-32768 32767。选项 A)超出了范围,错误。C 语言中整常数可用三种形式表示:十进制整数,八进制整数,十六进制整数。23.若要求从键盘读入含有空格字符的字符串,应使用函数A) getc() B) gets() C) getchar() D) scanf()(分数:2.00)A.B. C.D.解析:解析 scanf()语句用“空格”区别不同的字符串;getc()与 getchar()语句不能用于字符串的读入。24.下列函数的运行结果是main()int i=2,p;in

41、t j,k;j=i;k=+i;p=f(j,k);printf(“%d“,p);intf(int a,int b)int c;if(ab)c=1;else if(a=b)c=0;else c=-1;return(c);A) -1 B) 1C) 2 D) 编译出错,无法运行(分数:2.00)A. B.C.D.解析:解析 函数调用相当于 f(2,3),程序运算应得结果为“-1”。25.以下程序运行后的输出结果是#includestdio.hmain( )int i=5;doif(i%3=1 if(i%5=2)printf(“*%d“,i);break;i+:while(i!=0);printf(“/

42、n“);A) %7 B) *3*5 C) *5 D) *2*6(分数:2.00)A. B.C.D.解析:解析 本程序的功能是从 5(i的初值为 5)开始,打印满足条件“i%3 等于 1同时 i%5等于 2”的i值。第一个满足条件的 i是 7,因此输出*7。26.有以下程序main()char s =“159“,*p;p=s;printf(“%c“,*p+);printf(“%c“,*p+);程序运行后的输出结果是_。(A) 15(B) 16(C) 12(D) 59(分数:2.00)A. B.C.D.解析:27.以下程序(程序左边的数字为附加的行号)_。1#includestr.h2#inclu

43、destdio.h3main()4 chars=“string“;5puts(s);6strcpy(s,“hello“);7printf(“%3S/n“,s);A) 没有错 B) 第 1行有错 C) 第 6行有错 D) 第 7行有错(分数:2.00)A.B. C.D.解析:评析 字符串复制函数 strcpy包含在头文件 string.h中,因此,程序中的第 1行文件包含命令是错误的。28.有以下程序#includestdio.h#includestring.hmain()char a510=“china“,“beijing“,“you“,“tiananmen“,“welcome“);int i

44、,j; char t10;for(i=0;i4;i+)for(j=i+1;j5;j+)if(strcmp(ai,aj)0)strcpy(t,ai);strcpy(ai,aj);strcpy(aj,t);puts(a3);程序运行后的输出结果是( )。A)Beijing B)china C)welcome D)tiananmen(分数:2.00)A.B.C. D.解析:解析 由程序中的两层 for循环可知,对数组串数组进行从小到大的排序,所以字符串数组 a,经过排序后值应该为“beijing“,“china“,“tiananmen“,“welcome“,“you“),输出字符串 a3的值为“we

45、lcome”。29.以下不能正确定义二维数组的选项是( )。A) int a22=1,2; B) int a2=1,2,3,4;C) int a22=1,2,3; D) int a2=1,2,3,4;(分数:1.00)A.B.C.D. 解析:解析 选项 A)定义的数组按行各数组元素分别是:1,0,2,0;选项 B)定义的数组按行各数组元素分别是:1,2,3,4;选项 C)定义的数组按行各数组元素分别是:1,0,2,3;因为定义数组时,第一维的长度可以不指定,第二维的长度必须指定,所以选项 D)错。30.下列程序中函数 sort()的功能是对数组 a中的数据进行由大到小的排序。#includes

46、tdiohvoidsort(int a,int n)int i,j,t;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(aiaj)t=ai;ai=aj;aj=t;main()int a 10=1,2,3,4,5,6,7,8,9,10,i;sort(for(i:0;i10;i+)printf(“%d,“,ai);程序运行后的输出结果是( )。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,(分数:1.00)A.B.C. D.解析:解析 本程序中的函数 sort(int a,int n)实现的功能是将数组 a中的前 n个数进行从大到小排序。 sort(该程序生成的可执行文件名为:proc.exe,若在运行时输入命令行:proc 123 45 67则该程序的输出结果是_。A) 3 B) 5 C) 7 D) 11(分数:2.00)A

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

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