【计算机类职业资格】二级C语言-17及答案解析.doc
《【计算机类职业资格】二级C语言-17及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-17及答案解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-17 及答案解析(总分:71.50,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:46.00)1.有以下程序:main()char s=“Yes/n/No“,*ps=s;puts(ps+4);*(ps+4)=0;puts(s);程序运行后的输出结果是(选项 D 中的第一行是空行) ( )。 A. n/No Yes /No B. /No Yes C. /No Yes /No D. /No Yes (分数:1.00)A.B.C.D.2.以下叙述中正确的是_。 A. 用 C 语言实现的算法必须要有输入和输出操作 B. 用 C 语言实现的算法可以没有输出,但必须要有输入
2、C. 用 C 程序实现的算法可以没有输入,但必须要有输出 D. 用 C 程序实现的算法可以既没有输入,也没有输出(分数:1.00)A.B.C.D.3.以下叙述中错误的是 A. C 语言是一种结构化程序设计语言 B. 结构化程序由顺序、分支、循环三种基本结构组成 C. 使用三种基本结构构成的程序只能解决简单问题 D. 结构化程序设计提倡模块化的设计方法(分数:1.00)A.B.C.D.4.下列选项可以正确表示字符型常量的是 A. /r B. “a“ C. “/897“ D. 296(分数:1.00)A.B.C.D.5.以下程序运行后的输出结果是_。int d=1:fun(int p)static
3、 int d=5;d+=p;printf(“%d“,d);return d;main()int a=3;printf(“%d/n“,fun(a+fun(d); A. 699 B. 669 C. 61515 D. 6615(分数:2.00)A.B.C.D.6.有以下程序#includestdiohmain() int a=2,b=2,c=2;printf(“%d/n“,a/bprintf(“%d/n“,* (p+3); A. 67 B. 0 C. 字符C的地址 D. 字符C(分数:2.00)A.B.C.D.8.若有定义 int x, y;,并已正确给变量赋值,则以下选项中与表达式(x-y)?(x
4、+):(y+)中的条件表达式(x-y)等价的是_。 A. (x-y0) B. (x-y0) C. (x-y0|x-y0) D. (x-y=0)(分数:1.00)A.B.C.D.9.#define 能作简单的替代,用宏来替代计算多项式 5*x*x+5*x+5 的值的函数 f,正确的宏定义语句为U/U。 A. #definef(x)5*x*x+5*x+5 B. #definef5*x*x+5*x+5 C. #definef(a)(5*a*a+5*a+5) D. #define(5*x*x+5*x+5)f(x)(分数:2.00)A.B.C.D.10.下列判断正确的是U /U。 A. chara=“A
5、BCD“;等价于 char*a;*a=“ABCD“; B. char str10=“ABCD“;等价于 char str10;str=“ABCD“; C. char*s=“ABCD“;等价于 char s;*s=“ABCD“; D. charc5=“ABCD“,d5=“ABCD“;等价于 char c5=d5=“ABCD“;(分数:1.00)A.B.C.D.11.当用户要求输入的字符串中含有空格时,应使用的输入函数是U /U。 A. scanf() B. getchar() C. gets() D. getc()(分数:2.00)A.B.C.D.12.以下各选项企图说明一种新的类型名,其中正确
6、的是 _。 A. typedef vl int; B. typedef v2=int C. typedef int v3; D. typedef v4:int (分数:1.00)A.B.C.D.13.C 语言规定,简单变量作实参时,它和对应形参之间的数据传递方式是_。 A. 由实参传给形参,再由形参传回给实参 B. 地址传递 C. 单向值传递 D. 由用户指定传递方式(分数:1.00)A.B.C.D.14.有以下程序:main()int a=2,4,6,8,10),y=0,x,*P;P=a1;for(x=1;x3;x+)y+=px;printf(“%d/n“,y);程序运行后的输出结果是_。
7、A. 10 B. 11 C. 14 D. 15(分数:2.00)A.B.C.D.15.将 E-R 图转换到关系模式时,实体与实体间的联系可以表示成U /U A. 属性 B. 关系 C. 键 D. 域(分数:2.00)A.B.C.D.16.已知字母 A 的 ASCII 代码值为 65,若变量 kk 为 char 型,以下不能正确判断出比中的值为大写字母的表达式是 A. kk=A i4; i+, i+)for(k=1; k3; k+); printf(“*“); A. * B. * C. * D. *(分数:1.00)A.B.C.D.19.有以下程序段:char ch; int k; ch=a;
8、k=12; printf(“%c, %d, “, ch, ch); printf(“k=%d/n“, k); 已知字符 a 的 ASCII 码值为 97,则执行上述程序段后输出结果是( )。 A. 因变量类型与格式描述符的类型不匹配,输出无定值 B. 输出项与格式描述符个数不符,输出为零值或不定值 C. a, 97, 12k=12 D. a, 97, k=12(分数:1.00)A.B.C.D.20.有以下程序:main()int e=2,4,6,8,10,y=0,x,*p;p=a1;for(x=1;x3;x+)y+=px;printf(“%d/n“,y);程序运行后的输出结果是_。 A. 10
9、 B. 11 C. 14 D. 15(分数:2.00)A.B.C.D.21.有以下程序main() int x=1,3,5,7,2,4,6,0,i,j,k;for(i=0; i3 ; i+)for(j=2; j=i ; j-)if(xj+1xj) k=xj; xj=xj+1; xj+1=k; for(i=0; i3; i+)for(j=4; j7-i; j+)if(xjxj+1)k=xj; xj=xj+1; xj+1=k; for(i=0; i8; i+)printf(“%d“,xi);printf(“/n“);程序运行后的输出结果是_。 A. 75310246 B. 01234567 C.
10、76310462 D. 13570246(分数:1.00)A.B.C.D.22.一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是U /U。 A.12345ABCDE B.EDCBA54321 C.ABCDE12345 D.54321EDCBA(分数:1.00)A.B.C.D.23.有以下程序typedef structint b,p;A;void f(A c) /*注意:c 是结构变量名 */ int j;c.b+=1; c.p+=2;main() int i;A a=1,2;f(a);printf(“%d,%d/n“,a.b
11、,a.p);程序运行后的输出结果是_。 A. 2,3 B. 2,4 C. 1,4 D. 1,2(分数:2.00)A.B.C.D.24.fgetc 函数的作用是从指定文件读入一个字符,该文件的打开方式必须是_。 A. 只读 B. 追加 C. 读或读写 D. 以上均正确(分数:2.00)A.B.C.D.25.有下列二叉树,对此二叉树前序遍历的结果为U /U。(分数:2.00)A.B.C.D.26.结构化分析方法是面向U /U的自顶向下逐步求精进行需求分析的方法。 A. 对象 B. 数据结构 C. 数据流 D. 目标(分数:2.00)A.B.C.D.27.下列关于 C 语言数据文件的叙述中正确的是
12、A. 文件由 ASCII 码字符序列组成,C 语言只能读写文本文件 B. 文件由二进制数据序列组成,C 语言只能读写二进制文件 C. 文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件 D. 文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件(分数:1.00)A.B.C.D.28.以下叙述中正确的是U /U。 A. 调用 pfintf 函数时,必须要有输出项 B. 使用 putchar 函数时,必须在之前包含头文件 stdio.h C. 在 C 语言中,整数可以以十二进制、八进制或十六进制的形式输出 D. 调用 getchar 函数读入字符时,可以从键盘上输入字符所对
13、应的 ASCII 码(分数:1.00)A.B.C.D.29.以下叙述中错误的是 U /U A. 在 C 程序中,APH 和 aph 是两个不同的变量 B. C 程序中的变量,代表内存中的一个存储单元,它的值可以根据需要随时修改 C. 在 C 程序中,无论是整数还是实数,都能准确无误地表示 D. 在 C 程序中,一个正整数可以用十进制、八进制和十六进制的形式来表示(分数:1.00)A.B.C.D.30.有如下程序段:#includestdio.h#define Max(a,B) ab?a:bmain()int a=5,b=6,c=4,d;d=c+Max(a,B) ;printf(“%d“,D)
14、;其输出结果为_。 A. 10 B. 5 C. 6 D. 编译错误 (分数:1.00)A.B.C.D.31.若有以下定义和语句,且 0I10,则对数组元素的错误引用是 ( )int a 1,2,3,4,5,6,7,8,9,0;int*p,Ipa; A.* (aI) B.ap-a C.pI D.* (aI) (分数:1.00)A.B.C.D.32.下列叙述中正确的是U /U。 A. C 程序由函数组成 B. C 程序由主函数构成 C. C 程序由函数和过程构成 D. 在 C 程序中无论是整数还是实数,都可以正确无误的表示出来(分数:1.00)A.B.C.D.33.字符串“/“ABCDEF“/“的
15、长度是U /U。 A. 15 B. 10 C. 7 D. 8(分数:1.00)A.B.C.D.34.C 语言中 U /U A. 不能使用 do-while 语句构成的循环 B. do-while 语句构成的循环必须用 break 语句才能退出 C. do-while 语句构成的循环,当 while 语句中的表达式值为非零时结束循环 D. do-while 语句构成的循环,当 while 语句中的表达式值为零时结束循环(分数:1.00)A.B.C.D.35.fseek 函数的正确调用形式是 A. fseek(文件指针,起始点,位移量) B. fseek(文件指针,位移量,起始点) C. fsee
16、k(位移量,起始点,文件指针) D. fseek(起始点,位移量,文件指针)(分数:1.00)A.B.C.D.二、B填空题/B(总题数:15,分数:25.50)36.将经过确认测试的软件与外设、网络等连接在一次运行的测试叫U U /U/U(分数:1.00)填空项 1:_37.有以下程序 #include stdio.h main() char a20= “How are you? “,b20; scanf(“%s“,b);printf(“%s%s/n“,a,b); 程序运行时从键盘输入:How are you?回车 则输出结果为_。(分数:2.00)填空项 1:_38.以下程序的输出结果是_。
17、 int fun(int *x,int n) if(n=0) return x0; else return x0+fun(x+1,n-1); main() int a=1,2,3,4,5,6,7; printf(“%d/n“,fun(a,3);(分数:2.00)填空项 1:_39.算法执行过程中,所需要的基本运算次数称为算法的 1。(分数:1.00)填空项 1:_40.将经过确认测试的软件与外设、网络等连接在一次运行的测试叫 1.(分数:1.00)填空项 1:_41.当线性表采用顺序存储结构实现存储时,其主要特点是 1。(分数:1.00)填空项 1:_42.设二叉树如下: (分数:4.00)填
18、空项 1:_43.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。(分数:1.50)填空项 1:_44.以下程序运行后的输出结果是_。 main() int x=0210;printf(“%x/n“,x); (分数:2.00)填空项 1:_45.以下程序的作用是:从名为 fileadat 的文本文件中逐个读入字符并显示在屏幕上。请填空。 #include stdio.h main() FILE *fp; char ch; fp=fopen(_); ch=fSetc(fp); while(!feof(fp) putc
19、har(ch); ch=fSetc(fp); putchar(/n); fclose(fp); (分数:2.00)填空项 1:_46.设 y 是 int 型,请写出 y 为奇数的关系表达式 1。(分数:2.00)填空项 1:_47.设有如下定义 #define MYSWAP(z,x,y) z=x; x=y; y=z; float a=5,b=16,c; MYSWAP(_,a,b);(分数:3.00)填空项 1:_48.以下程序中,函数 fun 的功能是计算 x2-2x6,主函数中将调用 fun 函数计算:y1=(x8) 2-2(x8)6y2=sin2(x)-2sin(x)6请填空。#inclu
20、de “math.h“double fun(double x) return (x*x-2*x6);main() double x,y1,y2;printf(“Enter x:“); scanf(“%1f“,y1=fim(U /U);y2=run(U /U);printf(“y1=%1f,y2=%1f/n“,y1,y2);(分数:1.00)填空项 1:_49.在对文件进行操作的过程中,若要使文件位置的指针回到文件的开头,应使用的函数是U U /U /U。(分数:1.00)填空项 1:_50.算法的执行过程中,所需要的存储空间称为算法的U U /U /U。(分数:1.00)填空项 1:_二级 C
21、 语言-17 答案解析(总分:71.50,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:46.00)1.有以下程序:main()char s=“Yes/n/No“,*ps=s;puts(ps+4);*(ps+4)=0;puts(s);程序运行后的输出结果是(选项 D 中的第一行是空行) ( )。 A. n/No Yes /No B. /No Yes C. /No Yes /No D. /No Yes (分数:1.00)A.B. C.D.解析:解析 主函数中定义了一个字符数组 s 并赋初值,一个字符串指针变量 ps 并让它指向 s。程序中p+4 的地址为数组第 5 个元素的地址,而
22、调用 put(str adr)函数时,将从 str adr 这一地址开始,依次输出存储单元中的字符,遇到第一个“/0”时结束输出,并自动输出一个换行符 ad。r 所以 put(p+4)将输出 n/No,put(s)将从 s 第一个元素开始输出到第 3 个元素结束(因为执行*(p+4)=0 语句后 s 中的第 5 个元素的值为 0,而 s 中的第 4 个元素为“/”,puts 将遇到“/0”,结束输出),即输出 yes。所以,4 个选项中选项 B 符合题意。2.以下叙述中正确的是_。 A. 用 C 语言实现的算法必须要有输入和输出操作 B. 用 C 语言实现的算法可以没有输出,但必须要有输入 C
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 17 答案 解析 DOC
