【计算机类职业资格】二级C语言-18及答案解析.doc
《【计算机类职业资格】二级C语言-18及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-18及答案解析.doc(29页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-18 及答案解析(总分:79.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:49.00)1.以下程序企图把从终端输入的字符输出到名为 abc.txt 的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。#include stdio.hmain() FILE *fout; char ch;fout=fopen(abc.txt,w);ch=fgetc(stdin);while(ch!=#) fputc(ch,fout);ch =fgetc(stdin);fclose(fout);出错的原因是 A. 函数 fopen 调用形式有误 B. 输入文件没有
2、关闭 C. 函数 fgetc 调用形式有误 D. 文件指针 stdin 没有定义(分数:1.00)A.B.C.D.2.在 16 位 IBM-PC 机上使用 C 语言,若有如下定义struct data int i;char ch;double f; b;则结构变量 b 占用内存的字节数是 A. 1 B. 2 C. 7 D. 11(分数:1.00)A.B.C.D.3.以下叙述中正确的是 _。 A.用 C 程序实现的算法必须要有输入和输出操作 B.用 C 程序实现的算法可以没有输出但必须要输入 C.用 C 程序实现的算法可以没有输入但必须要有输出 D.用 C 程序实现的算法可以既没有输入也没有输出
3、 (分数:1.00)A.B.C.D.4.下列关于栈的叙述中正确的是U /U。 A. 在栈中只能插入数据 B. 在栈中只能删除数据 C. 栈是先进先出的线性表 D. 栈是先进后出的线性表(分数:2.00)A.B.C.D.5.有以下程序段char eh; int k;ch=a; k=12;printf(“%c,%d,“,ch,ch,k); printf(“k=%d/n“,k);已知字符 a 的 ASCII 码值为 97,则执行上述程序段后输出结果是 A. 因变量类型与格式描述符的类型不匹配输出无定值 B. 输出项与格式描述符个数不符,输出为零值或不定值 C. a,97,12k=12 D. a,97
4、,k=12(分数:1.00)A.B.C.D.6.面向对象方法中,继承是指 A. 一组对象所具有的相似性质 B. 一个对象具有另一个对象的性质 C. 各对象之间的共同性质 D. 类之间共享属性和操作的机制(分数:2.00)A.B.C.D.7.设有定义:int a,*pa=scanf(“%d“,s):while(s0) switch(s) case 1:printf(“%d“,s+5);case 2:printf(“%d“,s+4);break;case 3:printf(“%d“,s+3);default:printf(“%d“,s+1);break;scanf(“%d“,s);运行时,若输入
5、123450回车,则输出结果是_。 A.66656 B.6566456 C.66666 D.6666656(分数:1.00)A.B.C.D.10.分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描绘了系统的_。 A.总貌 B.细节 C.抽象 D.软件的作用(分数:2.00)A.B.C.D.11.在结构化方法中,用数据流程图(DFD) 作为描述工具的软件开发阶段是_。 A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (分数:1.00)A.B.C.D.12.有以下程序:main()int m,n,p;scanf(“m=%dn=%dp=%d“,printf(“%d%d%/n
6、“,m,n,p);若想从键盘上输入数据,使变量 m 中的值为 123,n 中的值为 456;p 中的值为 789,则正确的输入是 _ 。 A.m=123 n=456p=789 B.m=123 n=456 p=789 C.m=123,n=456,p=789 D.123 456 789 (分数:1.00)A.B.C.D.13.若有以下程序#includestdio.htypedef struct stuchar name10,gender;int score;STU;void f(STU a,STU b) b=a;printf(“%s,%c,%d,“,b.name,b.gender,b.score
7、);main() STU a=“Zhao“,m,290,b=“Qian“,f,350;f(a,b);printf(“%s,%c,%d/n“,b.name,b.gender,b.score;则程序的输出结果是_。 A.Zhao,m,290,Qian,f,350 B.Zhao,m,290,Zhao,m,290 C.Qian,f,350,Qian,f,350 D.Zhao,m,290,Zhao,f,350(分数:2.00)A.B.C.D.14.若有定义语句:char s10=“1234567/0/0“;则 strlen(s)的值是_。 A.7 B.8 C.9 D.10(分数:1.00)A.B.C.D
8、.15.下面程序输出的结果是_。main()int i=5,j=9,z;x=(i=j?i:(j=7);printf(:/n%d,%d“,i,j); A. 5,7 B. 5,5 C. 语法错误 D. 7,5(分数:1.00)A.B.C.D.16.有以下程序:#includestdio.hmain() int a=6,b=7,m=1;switch(a%2) case 0:m+;break;case 1 :m+;switch(b%2) defaut:m+;case0:m+;break;printf(“%d/n“,m); A. 1 B. 2 C. 3 D. 4(分数:1.00)A.B.C.D.17.有
9、以下程序:#includestdio.hmain() char s=“aeiou“), *ps; ps=s; printf(“%c/n“, *ps+4); 程序运行后的输出结果是( )。 A. a B. e C. u D. 元素 s4的地址(分数:1.00)A.B.C.D.18.有以下程序main() int p8=(11,12,13,14,15,16,17,18),i=0,j=0;while(i+7)if(pi%2) j+=pi;printf(“%d/n“,j);程序运行后的输出结果是_。 A. 42 B. 45 C. 56 D. 60(分数:1.00)A.B.C.D.19.检查软件产品是否
10、符合需求定义的过程称为 A. 确认测试 B. 集成测试 C. 验证测试 D. 验收测试(分数:1.00)A.B.C.D.20.下列程序的输出结果是U /U。main()int a,b,d25;a:d/10%9;baprintf(“%d,%d/n“,a,b) ; A. 6,1 B. 2,1 C. 6,0 D. 2,0(分数:1.00)A.B.C.D.21.经下列语句定义后,sizeof(x)、sizeof(y)、sizeof(a)、sizeof(b)在 IBM-PC 机上的值分别为_。char x=65;float y=7.3;int a=100;double b=4.5; A.2,2,2,4
11、B.1,2,2,4 C.1,4,2,8 D.2,4,2,8(分数:2.00)A.B.C.D.22.下列叙述中,不属于软件需求规格说明书的作用的是( )。 A. 便于用户、开发人员进行理解和交流 B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据 C. 作为确认测试和验收的依据 D. 便于开发人员进行需求分析(分数:1.00)A.B.C.D.23.有以下程序: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.
12、24.下列判断正确的是U /U。 A. char a“ABCD“;等价于 char*a;*a“ABCD“; B. char str10ABCD“;等价于 char str10;str“ABCD“; C. char*s“ABCD“;等价于 char s;*s“ABCD“; D. char c5“ABCD“,d5“ABCD“;等价于 char c5d5“ABCD“;(分数:2.00)A.B.C.D.25.以下叙述正确的是 A. 在 C 语言中,只能用“/*“和“*/“对程序进行注释 B. 在 C 语言注释语句中,“/“和“*“之间不可以有空格 C. 注释语句只能使用西文 D. 在 C 程序中,注释
13、说明只能位于一条语句的后面(分数:1.00)A.B.C.D.26.若有运算符,sizeof,for(i=1;i3;i+)for(j=0;j=i;j+)s+=aij;printf(“%d/n“,s);该程序的输出结果是_。 A. 18 B. 19 C. 20 D. 21(分数:2.00)A.B.C.D.30.下列程序段的输出结果是int n=c;switch(n+)default: printf(“error“);break;case a: case A: case b: case B: printf(“good“);break;case c: case C: printf(“pass“);ca
14、se d: case D: printf(“warn“); A. passwarn B. passerror C. goodpasswarn D. pass(分数:1.00)A.B.C.D.31.下列程序的执行结果是U /U。#includestdio.hmain() int a,b,c;a=b=2;c=(a+)-1;printf(“%d,%d“,a,c);c+=-a+(+b);printf(“%d,%d“,a,c); A. 3,14,1 B. 3,14,2 C. 2,04,1 D. 2,14,1(分数:2.00)A.B.C.D.32.有以下程序main( ) int i,s=0;for(i=
15、1;il0;i+=2) s+=i+1printf(“%d/n“,s);程序执行后的输出结果是 _。 A. 自然数 19 的累加和 B. 自然数 110 的累加和 C. 自然数 19 中奇数之和 D. 自然数 110 中偶数之和(分数:2.00)A.B.C.D.33.线性表的顺序存储结构和线性表的链式存储结构分别是U /U。 A. 顺序存取的存储结构、顺序存取的存储结构 B. 随机存取的存储结构、顺序存取的存储结构 C. 随机存取的存储结构、随机存取的存储结构 D. 任意存取的存储结构、任意存取的存储结构(分数:2.00)A.B.C.D.34.以下选项中,值为 1 的表达式是U /U。 A. 1
16、-0 B. 1-/0 C. 1-0 D. /0-0(分数:1.00)A.B.C.D.35.现有如下定义语句int*p,s20,i;p=s;表示数组元素 si的表达式不正确的是 A. *(s+i) B. *(p+i) C. *(s=s+i) D. *(p=p+i)(分数:1.00)A.B.C.D.二、B填空题/B(总题数:15,分数:30.00)36.以下程序运行后输入:3,abcde回车,则输出结果是_。 #include string. h move (char *str,int n) char cemp; int i; temp=strn-1; for (i=n-1;i0;i-) stri
17、=stri-1); str0=temp; main() char s50; int n, i, z; scanf(“%d,%s”, i=n;i+)move (s,z); printf(“%s/n”,s); (分数:4.00)填空项 1:_37.开发个 C 语言程序需要经过 1、 2、 3 和 4 四个基本过程。(分数:2.00)填空项 1:_填空项 1:_填空项 1:_填空项 1:_38.下列的 for 语句的循环次数为_。 for(x=1,y=0;(y!=19)x+);(分数:2.00)填空项 1:_39.实体之间的联系可以归结为一对一的联系,一对多的联系与多对多的联系。如果一个学校有许多学
18、生,而一个学生只属于一个学校,则实体集学校与实体集学生之间的联系属于U U /U /U的联系。(分数:1.00)填空项 1:_40./13在内存中占 1 个字节,“/12“在内存中占_个字节。(分数:2.00)填空项 1:_41.若想通过以下输入语句使 a 中存放字符串 1234,b 中存放字符 5,则输入数据的形式应该是U U/U/U。 char a10,b;scanf(“a%s b%c“,a, scanf(“%d“, c1); c2=c1+9; printf(“%c%c/n“, c1, c2); 若程序运行时从键盘输入 48回车,则输出结果为_。(分数:2.00)填空项 1:_44.若有定
19、义:int a441,2,3,4,0,4,6,8,10,1,3,5,7,则初始化后,a22得到的初值是 1。(分数:2.00)填空项 1:_45.以下程序可将磁盘中的一个文件复制到另一个文件中,两个文件的文件名在可执行命令的命令行中(相当于 COPY 命令),假定文件在当前目录下。 #include stdio.h void main(int argc,char *argv) FILE*f1*f2; if(argc_) printf(“parameter error!/n“);exit(0); f1=fopen(argv1,“r“); f2=fopen(argv2,“w“); while(_)
20、fputc (fgetc (f1),f2); fclose(f1): fclose(f2);(分数:1.00)填空项 1:_46.对于顺序存储的栈,因为栈的空间是有限的,在 1 运算时,可能发生栈的上溢。(分数:2.00)填空项 1:_47.以下程序的输出结果是_。 main() int arr=30,25,20,15,10,5,*p=arr; p+; printf(“%d/n“,*(p+3); (分数:1.00)填空项 1:_48.若输入 12、3、2、5、7,则以下程序的运行结果为U U /U /U。 int max,min; void max_min_value(); main() in
21、t i,number5; printf(“输入 5 个整数;/n“); for(i=0;i5;i+) scanf(“%d“, scanf(“%d“, c1); c2=c1+9; printf(“%c%c/n“, c1, c2); 若程序运行时从键盘输入 48回车,则输出结果为_。(分数:2.00)填空项 1:_二级 C 语言-18 答案解析(总分:79.00,做题时间:90 分钟)一、B选择题/B(总题数:35,分数:49.00)1.以下程序企图把从终端输入的字符输出到名为 abc.txt 的文件中,直到从终端读入字符#号时结束输入和输出操作,但程序有错。#include stdio.hmai
22、n() FILE *fout; char ch;fout=fopen(abc.txt,w);ch=fgetc(stdin);while(ch!=#) fputc(ch,fout);ch =fgetc(stdin);fclose(fout);出错的原因是 A. 函数 fopen 调用形式有误 B. 输入文件没有关闭 C. 函数 fgetc 调用形式有误 D. 文件指针 stdin 没有定义(分数:1.00)A. B.C.D.解析:解析 本题考核的知识点是文件的简单应用。stdin 是标准输入设备的文件指针,不需定义直接可以使用,它随系统的启动而打开,随系统的关闭而关闭,fgetc()函数的作用是
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 18 答案 解析 DOC
