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

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

1、二级 C 语言笔试-215 及答案解析(总分:98.00,做题时间:90 分钟)一、选择题(总题数:50,分数:60.00)1.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是( )。(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/22.有以下程序: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+

2、1)k=xj;xj=xj+1;xj+1=k;for(i=0;i8;i+)printf(“%d“,xi);printf(“/n“);程序运行后的输出结果是( )。(分数:2.00)A.75310246B.01234567C.76310462D.135702463.有以下程序;void ss(char *s,char t)while(*s)if(*s=t) *s=t-a+A;s+;main()char str1100=“abcddfefdbd“,c=d;ss(str1,c);printf(“%s/n“,str1);程序运行后的输出结果是( )。(分数:2.00)A.ABCDDEFEDBDB.abe

3、DDfefDbDC.abcAAfefAbAD.Abcddfefdbd4.在面向对象方法中,实现信息隐蔽是依靠( )。(分数:2.00)A.对象的继承B.对象的多态C.对象的封装D.对象的分类5.若有定义语句:int a23,*p3;,则以下语句中正确的是( )。(分数:2.00)A.p=a;B.p0=a;C.p0=D.p1=6.有以下程序:void change(int k)k0=k5;main()int x10=(1,2,3,4,5,6,7,8,9,10,n=0;while(n=4) change(n+;for(n=0;n5;n+) printf(“%d“,xn);printf(“/n“);

4、程序运行后输出的结果是( )。(分数:2.00)A.6 7 8 9 10B.1 3 5 7 9C.1 2 3 4 5D.6 2 3 4 57.下列描述中正确的是( )。(分数:2.00)A.软件工程只是解决软件项目的管理问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D.软件工程只是解决软件开发中的技术问题8.设有定义:int n1=0,n2,*p=,以下赋值语句中与 n2=n1;语句等价的是( )。(分数:2.00)A.*p=*q;B.p=q;C.*p=D.p=*q;9.以下 4 个程序中,完全正确的是( )。(分数:2.00)A.#

5、include stdio.hmain();/* programming */printf(“programming!/n“);B.#include stdio.hmain()/*/ programming /*/printf(“programming!/n“);C.#include stdio.hmain()/*/* programming */*/printf(“programming!/n“);D.#include stdio.hmain()/* programming */printf(“programming!/n“);10.有以下程序:#include stdio.hstxuct

6、ttint x;struct tt *y;*p;struct tt a4=20,a+1,15,a+2,30,a+3,17,a;main()int i;p=a;for(i=1;i=2;i+) printf(“%d,“,p-x ); p=p-y;程序的运行结果是( )。(分数:2.00)A.20,30,B.30,17C.15,30,D.20,15,11.以下程序中函数 sort 的功能是对 a 所指数组中的数据进行由大到小的排序;void sort(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;a

7、j=t;main()int aa10=1,2,3,4,5,6,7,8,9,10,i;sort(for(i=0;i10;i+)print(“%d,“,aai);printf(/n“);程序运行后的输出结果是( )。(分数:1.00)A.1,2,3,4,5,6,7,8,9,10B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,8,7,6,5,4,9,10D.1,2,10,9,8,7,6,5,4,3,12.有以下程序:#include stdio.hmain()char c1,c2,c3,c4,c5,c6;scanf(%c%c%c%c,c5=getchar(); c6=getchar()

8、;putchar(c1); putchar(c2);printf(%c%c/n,c5,c6);程序运行后,若从键盘输入(从第 1 列开始)123回车45678回车则输出结果是( )。(分数:1.00)A.1267B.1256C.1278D.124513.下列关于 E-R 图的描述中正确的是( )。(分数:1.00)A.E-R 图只能表示实体之间的联系B.E-R 图只能表示实体和实体之间的联系C.E-R 图只能表示实体和属性D.E-R 图能表示实体、属性和实体之间的联系14.有以下程序:#include string.hvoid f(char p10,int n)/* 字符串从小到大排序 */c

9、har t10; int i,j;for(i=0;in-1;i+)for(j=i+1;jn;j+)if(strcmp(pi,pj)0)strcpy(t,pi);strcpy(pi,pj);strcpy(pj,t);main()char p510=“abc“,“aabdog“,“abbd“,“dcdbe“,“cd“;f(p,5);printf(“%d/n“,strlen(p0);程序运行后的输出结果是( )。(分数:1.00)_15.阅读以下函数:fun(char *s1,char *s2)int i=0;while(s1i=s2ireturn(s1i=/0此函数的功能是( )。(分数:1.00

10、)A.将 s2 所指字符串赋给 s1B.比较 s1 和 s2 所指字符串的大小,若 s1 比 s2 的大,函数值为 1,否则函数值为 0C.比较 s1 和 s2 所指字符串是否相等,若相等,函数值为 1,否则函数值为 0D.比较 s1 和 s2 所指字符串的长度,若 s1 比 s2 的长,函数值为 1,否则函数值为 016.以下程序输出的结果是( )。#include stdio.hmain()int i=010,j=10;printf(“%d,%d/n:,+i,j-);(分数:1.00)A.11,10B.9,10C.010,9D.10,917.在面向对象的程序设计中,下列叙述中错误的是( )

11、。(分数:1.00)A.对象是面向对象软件的基本模块B.对象不是独立存在的实体,各个对象之间有关联,彼此依赖C.下一层次的对象可以继承上层次对象的某些属性D.同样的消息被不同对象接受时,可导致完全不同的行动18.冒泡排序在最坏情况下的比较次数是( )。(分数:1.00)A.n(n+1)/2B.nlog2nC.n(n-1)/2D.n/219.有以下程序:int a=4;int f(int n)int t=0; static int a=5;if(n%2) int a=6; t+=a+;else int a=7; t+=a+;return t+a+;main()int s=a,i=0;for(;i

12、2; i+) s+=f(i);printf(“%d/n“,s);程序运行后的输出结果是( )。(分数:1.00)A.24B.28C.32D.3620.有以下程序:#include string.hmain()char p=a,b,c,q10=a,b,c;printf(“%d %d/n“,strlen(p),strlen(q);以下叙述中正确的是( )。(分数:1.00)A.在给 p 和 q 数组置初值时,系统会自动添加字符串结束符,故输出的长度都为 3B.由于 p 数组中没有字符串结束符,长度不能确定;但 q 数组中字符串长度为 3C.由于 q 数组中没有字符串结束符,长度不能确定;但 p 数

13、组中字符串长度为 3D.由于 p 和 q 数组中都没有字符串结束符,故长度都不能确定21.有以下程序:#includestdio.hmain()printf(“%d/n“,NULL);程序运行后的输出结果是( )。(分数:1.00)A.0B.1C.-1D.NULL 没定义,出错22.有以下程序:#include stdlib.hstruct NODEint nurn;struct NODE *next;main()struct NODE *p,*q,*r;int sum=0;P=(struct NODE*)malloc(sizeof(struct NODE);q=(struct NODE*)m

14、alloc(sizeof(struct NODE);r=(struct NODE*)malloc(sizeof(struct NODE);p-num=1;q-num=2;r-num=3;p-next=q;q-next=r;r-next=NULL;sum+=q-next-num;sum+=p-num;Printf(“%d/n“,sum);执行后的输出结果是( )。(分数:1.00)A.3B.4C.5D.623.已有定义:char c;,程序前面已在命令行中包含 ctype.h 文件。不能用于判断 c 中的字符是否为大写字母的表达式是( )。(分数:1.00)A.isupper(c)B.A=c=Z

15、C.A=c float d2; demo;则下面叙述中错误的是( )。(分数:1.00)A.变量 demo 与成员 d2 所占的内存字节数相同B.变量 demo 中各成员的地址相同C.变量 demo 和各成员的地址相同D.若给 demo.d1 赋 99 后,demo.d2 中的值是 99.025.有以下程序,其中%u 表示按无符号整数输出:main()unsigned int x=0xFFFF; /*x 的初值为十六进制数*/printf(“%u/n“,x);程序运行后的输出结果是( )。(分数:1.00)A.-1B.65535C.32767D.0xFFFF26.下列数据结构中,能用二分法进行

16、查找的是( )。(分数:1.00)A.顺序存储的有序线性表B.线性链表C.二叉链表D.有序线性链表27.以下叙述中正确的是( )。(分数:1.00)A.全局变量的作用域一定比局部变量的作用域范围大B.静态(static)类别变量的生存期贯穿于整个程序的运行期间C.函数的形参都属于全局变量D.未在定义语句中赋初值的 auto 变量和 static 变量的初值都是随机值28.有以下程序:#include stdio.hmain()char c1=1,c2=2;c1=getchar();c2=getchar();putchar(c1);putchar(c2);当运行时输入:a回车后,以下叙述正确的是

17、( )。(分数:1.00)A.变量 c1 被赋予字符 a,c2 被赋予回车符B.程序将等待用户输入第 2 个字符C.变量 c1 被赋予字符 a,c2 中仍是原有字符 2D.变量 c1 被赋予字符 a,c2 中将无确定值29.以下叙述中错误的是( )。(分数:1.00)A.C 语言中对二进制文件的访问速度比文本文件快B.C 语言中,随机文件以二进制代码形式存储数据C.语句 FILE fp;定义了一个名为 fp 的文件指针D.C 语言中的文本文件以 ASCII 码形式存储数据30.有以下程序:#include stdlib.hmain()char *p,*q;p=(char*)malloc(siz

18、eof(char)*20);q=p;scanf(“%s%s“,p,q); printf(“%s%s/n“,p,q);若从键盘输入:abc def回车,则输出结果是( )。(分数:1.00)A.def defB.abc defC.abe dD.d d31.下列实体的联系中,属于多对多联系的是( )。(分数:1.00)A.学生与课程B.学校与校长C.住院的病人与病床D.职工与工资32.程序设计方法要求在程序设计过程中,( )。(分数:1.00)A.先编制出程序,经调试使程序运行结果正确后再画出程序的流程图B.先编制出程序,经调试使程序运行结果正确后再在程序中的适当位置处加注释C.先画出流程图,再根

19、据流程图编制出程序,最后经调试使程序运行结果正确后再在程序中的适当位置处加注释D.以上 3 种说法都不对33.设有如下说明:typedef struct STlong a;int b;char c2; NEW;则下面叙述中正确的是( )。(分数:1.00)A.以上的说明形式非法B.ST 是一个结构体类型C.NEW 是一个结构体类型D.NEW 是一个结构体变量34.有以下定义语句:double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是( )。(分数:1.00)A.a=a+b=b+B.w%(int)a+b)C.(c+w)%(int)aD.w=a=b35.

20、有以下程序:main()int a; char c=10;float f=100.0; double x;a=f/=c*=(x=6.5);printf(“%d %d %3.1f %3.1f/n“,a,c,f,x);程序运行后的输出结果是( )。(分数:1.00)A.1 65 1 6.5B.1 65 1.5 6.5C.1 65 1.0 6.5D.2 65 1.5 6.536.以下选项中合法的实型常数是( )。(分数:1.00)A.5E2.0B.E-3C2E0D.1.3E37.若有如下程序段,其中 s、a、b、c 均已定义为整型变量,且 a、c 均已赋值(c 大于 0)s=a;for(b=1;b=

21、c;b+)s=s+1;则与上述程序段功能等价的赋值语句是( )。(分数:1.00)A.s=a+b;B.s=a+c;C.s=s+c;D.s=b+c;38.有以下程序:main()int a=1,b=2,m=0,n=0,k;k=(n=b(分数:1.00)A.|(m=aB.;char ch;fout=fopen(abc.txt,w);ch=fgetc(stdin);while(ch!=#)fputc(ch,fout);ch=fgetc(stdin);fclose(fout);出错的原因是( )。(分数:1.00)A.函数 fopen 调用形式有误B.输入文件没有关闭C.函数 fgetc 调用形式有误

22、D.文件指针 stdin 没有定义43.设有以下语句:typedef struct TTchar c; int a4;CIN;则下面叙述中正确的是( )。(分数:1.00)A.可以用 TT 定义结构体变量B.TT 是 struct 类型的变量C.可以用 CIN 定义结构体变量D.CIN 是 struct TT 类型的变量44.若有说明语句:int a,b,c,*d=,则能正确从键盘读入 3 个整数分别赋给变量 a、b、c 的语句是( )。(分数:1.00)A.scanf(“%d%d%d“,B.scanf(“%d%d%d“,C.scanf(“%d%d%d“,a,b,d);D.scanf(“%d%

23、d%d“,a,b,*d);45.有以下程序:fun(int x,int y)static int m=0, i=2;i+=m+1; m=i+x+y; return m;main()int j=1,m=1,k;k=fun(j,m); printf(“%d,“k);k=fun(j,m); printf(“%d/n“,k);执行后的输出结果是( )。(分数:1.00)A.5,5B.5,11C.11,11D.11,546.有以下程序:main()char a,b,c,d;scanf(“%c,%c,%d,%d“,printf(“%c,%c,%c,%c/n“,a,b,c,d);若运行时从键盘上输入:6,5

24、,65,66回车。则输出结果是( )。(分数:1.00)A.6,5,A,BB.6,5,65,66C.6,5,6,5D.6,5,6,647.有以下程序:main()char p=a,b,c,q=“abc“;printf(“%d %d/n“,sizeof(p),sizeof(q);程序运行后的输出结果是( )。(分数:1.00)_48.若变量已正确定义,要求程序段完成求 5!的计算,不能完成此操作的程序段是( )。(分数:1.00)A.for(i=1,p=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+

25、;D.i=1;p=1;dop*=i; i+; while(1=5)49.有以下程序:main()char s=“/n123/“;printf(“%d,%d/n“,strlen(s),sizeof(s);执行后输出结果是( )。(分数:1.00)A.赋初值的字符串有错B.6,7C.5,6D.6,650.以下选项中,值为 1 的表达式是( )。(分数:1.00)A.1-0B.1-/0C.1-0D./0-0二、填空题(总题数:19,分数:38.00)51.数据管理技术发展过程经过人工管理、文件系统和数据库系统这 3 个阶段,其中数据独立性最高的阶段是 【1】 。(分数:2.00)填空项 1:_52.

26、在面向对象方法中,允许作用于某个对象上的操作称为 【2】 。(分数:2.00)填空项 1:_53.软件生命周期包括 2 今阶段。为了使各时期的任务更明确,又可分为 3 个时期:软件定义期、软件开发期、软件维护期。编码和测试属于 【3】 期。(分数:2.00)填空项 1:_54.在关系运算中, 【4】 运算是对两个具有公共属性的关系所进行的运算。(分数:2.00)填空项 1:_55.实体之间的联系可以归结为一对一的联系,一对多的联系与多对多的联系。如果一个学校有许多学生,而一个学生只归属于一个学校,则实体集学校与实体集学生之间的联系属于 【5】 的联系。(分数:2.00)填空项 1:_56.若从

27、键盘输入 58,则以下程序输出的结果是 【6】 。mam()int a;scanf(“%d“,if(a50) printf(“%d“,a);if(a40) printf(“%d“,a);if(a30) printf(“%d“,a);(分数:2.00)填空项 1:_57.以下程序用于判断 a、b、c 能否构成三角形,若能,输出 YES,否则输出 NO。当给 a、b、c 输入三角形三条边长时,确定 a、b、c 能构成三角形的条件是需同时满足三个条件:a+bc,a+cb,b+ca。请填空。main()float a,b,c;scanf(“%f%f%f“,if( 【7】 ) printf(“YES/n

28、“); /*a、b、c 能构成三角形*/else printf(“NO/n“); /*a、b、c 不能构成三角形*/(分数:2.00)填空项 1:_58.以下程序运行后的输出结果是 【8】 。main()int a=3,b=4,c=5,t=99;if(ba a=c;c=t;if(ac b=a;a=t;printf(“%d %d %d/n“,a,b,c);(分数:2.00)填空项 1:_59.有以下程序:main()int n=0,m=1,x=2;if(!n) x-=1;if(m) x-=2;if(x) x-=3;printf(“%d/n“,x);执行后输出的结果是 【9】 。(分数:2.00)

29、填空项 1:_60.以下程序的输出结果是 【10】 。#include string.hmain()printf(“%d/n“,strlen(“IBM/n012/1/“);(分数:2.00)填空项 1:_61.有以下程序:void f(int y,int *x)y=y+*x; *x=*x+y; main()int x=2,y=4;f(y,printf(“%d %d/n“,x,y);执行后输出结果是上 【11】 。(分数:2.00)填空项 1:_62.函数 fun 的功能是计算 xn。double fun(double x,int n)int i;double y=1;for(i=1;i=n;i

30、+) y=y*x;return y;主函数中已正确定义 m、a、b 变量并赋值,并调用 fun 函数计算:m=a 4+b4-(a+b)3。实现这一计算的函数调用语句为 【12】 。(分数:2.00)填空项 1:_63.以下函数 sstrcat()的功能是实现字符串的连接,即将 t 所指字符串复制到 s 所指字符串的尾部。例如:s 所指字符串为 abed,t 所指字符串为 efgh,函数调用后 s 所指字符串为 abodefgh。请填空。#include string.hvoid sstrcat(char *s,char *t)int n;n=strlen(s);while(*(s+n)= 【1

31、3】 )s+;t+;(分数:2.00)填空项 1:_64.以下程序运行后的输出结果是 【14】 。#include string.hchar *ss(char *s)char *p;t;p=s+1;t=*s;while(*p)*(p-1)=*p;p+;*(p-1)=t;return s;main()char *p,str10=“abcdergh“;p=ss(str);printf(“%s/n“,p);(分数:2.00)填空项 1:_65.函数 sstrcmp()的功能是对两个字符串进行比较。当 s 所指字符串和 t 所指字符串相等时,返回值为0;当 s 所指字符串大于 t 所指字符串时,返回值

32、大于 0;当 s 所指字符串小于 t 所指字符串时,返回值小于 0(功能等同于库函数 strcmp()。请填空。#include stdio.hint sstrcmp(char *s,char *t)while(*s t+;rerurn 【16】 ;(分数:2.00)填空项 1:_66.以下程序的输出结果是 【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:_67.下面程序

33、的运行结果是 【18】 。void swap(int *a,int *b)int *tp;t=a;a=b;b=t;main()int x=3,y=5,*p=swap(p,q);printf(“%d%d/n“,*p,*q);(分数:2.00)填空项 1:_68.下面程序的功能是建立一个有 3 个结点的单循环链表,然后求各个结点数值域 data 中数据的和,请填空。(分数:2.00)填空项 1:_69.有以下程序,其功能是:以二进制“写”方式打开文件 d1.dat,写入 1100 这 100 个整数后关闭文件。再以二进制“读”方式打开文件 d1.dat,将这 100 个整数读入到另一个数组 b 中

34、,并打印输出。请填空。#include stdio.hmain()FILE *fp;int i,a100,b100;fp=fopen(“d1.dat“,“wb“);for(i=0;i100;i+) ai=i+1;fwrite(a,sizeof(int),100,fp);fclose(fp);fp=fopen(“d1.dat“, 【20】 );fread(b,sizeof(int ),100,fp);fclose(fp);for(i=0;i100;i+) printf(“%d/n“,bi);(分数:2.00)填空项 1:_二级 C 语言笔试-215 答案解析(总分:98.00,做题时间:90 分

35、钟)一、选择题(总题数:50,分数:60.00)1.对于长度为 n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是( )。(分数:2.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/2 解析:解析 假设线性表的长度为 n,在最坏情况下,冒泡排序和快速排序需要的比较次数为 n(n-1)/2。2.有以下程序: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;j

36、7-i;j+)if(xjxj+1)k=xj;xj=xj+1;xj+1=k;for(i=0;i8;i+)printf(“%d“,xi);printf(“/n“);程序运行后的输出结果是( )。(分数:2.00)A.75310246 B.01234567C.76310462D.13570246解析:解析 主函数中定义了一个整型数组 x,并初始化。接着执行了一个二重 for 循环,在该二重循环的作用是将数组的前 4 个元素按从大到小排序,接着用了一个二重循环(也是冒泡算法)将数组的后 4 个元素按从小到大的顺序排序,故最后依次输出数组的个元素的值为 75310246,所以,4 个选项中选项 A 符合

37、题意。3.有以下程序;void ss(char *s,char t)while(*s)if(*s=t) *s=t-a+A;s+;main()char str1100=“abcddfefdbd“,c=d;ss(str1,c);printf(“%s/n“,str1);程序运行后的输出结果是( )。(分数:2.00)A.ABCDDEFEDBDB.abeDDfefDbD C.abcAAfefAbAD.Abcddfefdbd解析:解析 本题中的函数 ss()有两个参数,一个是字符型指针变量 s,另一个是字符型变量 t。在函数中通过一个 while 循环,在循环中一次取出 s 指向的字符串并判断它是否和

38、t 中存放的字符相同,若相等,则执行“*s=t-a+A;”(若是小写字母,则把它转换成大写字母)语句。在主函数中执行函数调用ss(str1,c),很显然是把 str1 数组中所有字符“d”变成大写字母,其他字符不变。所以 4 个选项中 B 正确。4.在面向对象方法中,实现信息隐蔽是依靠( )。(分数:2.00)A.对象的继承B.对象的多态C.对象的封装 D.对象的分类解析:解析 通常认为,面向对象方法具有封装性、继承性,多态性几大特点。所谓封装就是将相关的信息、操作与处理融合在一个内含的部件中 (对象中)。简单地说,封装就是隐藏信息。5.若有定义语句:int a23,*p3;,则以下语句中正确

39、的是( )。(分数:2.00)A.p=a;B.p0=a;C.p0= D.p1=解析:解析 选项 A 中,p 为数组名,其值是不能被改变的,故非法;选项 B 中,p0的类型是 int*,而 a 是二维数组名(类型为 int3),两者无法赋值,故非法:选项 C 中,p0为 int 型指针,main()int x10=(1,2,3,4,5,6,7,8,9,10,n=0;while(n=4) change(n+;for(n=0;n5;n+) printf(“%d“,xn);printf(“/n“);程序运行后输出的结果是( )。(分数:2.00)A.6 7 8 9 10 B.1 3 5 7 9C.1

40、2 3 4 5D.6 2 3 4 5解析:解析 本题的 change()函数实现的是:将传入的地址值的高 5 个单位的地址中的内容复制到传入的地址当中,即等价于*k=*(k+5)。在主函数中,首先通过 while 循环,循环 5 次调用 change()函数,依次将 x0x4的地址传入,所以 while 循环结束后,x0x4中的内容等于 x5x9中的内容。所以输出结果为 6 7 8 9 10,故应该选择 A。7.下列描述中正确的是( )。(分数:2.00)A.软件工程只是解决软件项目的管理问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则

41、 D.软件工程只是解决软件开发中的技术问题解析:解析 软件工程学是研究软件开发和维护的普遍原理与技术的一门工程学科,选项 A 说法错误。软件工程是指采用工程的概念、原理、技术和方法指导软件的开发与维护,软件工程学的主要研究对象包括软件开发与维护的技术、方法、工具和管理等方面,选项 B 和选项 D 的说法均过于片面,选项 C 正确。8.设有定义:int n1=0,n2,*p=,以下赋值语句中与 n2=n1;语句等价的是( )。(分数:2.00)A.*p=*q; B.p=q;C.*p=D.p=*q;解析:解析 题目中定义了两个变量 n1 和 n2,又定义了两个指针 p 和 q 分别指向变量 n2

42、和 n1。要通过指针实现 n2=n1,就是要将 q 所指内容赋给 p 所指内容,即*p=*q。所以应该选择 A。9.以下 4 个程序中,完全正确的是( )。(分数:2.00)A.#include stdio.hmain();/* programming */printf(“programming!/n“);B.#include stdio.hmain()/*/ programming /*/printf(“programming!/n“); C.#include stdio.hmain()/*/* programming */*/printf(“programming!/n“);D.#incl

43、ude stdio.hmain()/* programming */printf(“programming!/n“);解析:解析 选项 A 在定义 main()函数时,函数头后面多了一个分号,故选项 A 不正确;C 语言中的注释是不能嵌套的,故选项 C 不正确:选项 D 在使用预编译指令#include 时漏掉了#号,所以也是错误的。故应该选择 B。10.有以下程序:#include stdio.hstxuct ttint x;struct tt *y;*p;struct tt a4=20,a+1,15,a+2,30,a+3,17,a;main()int i;p=a;for(i=1;i=2;i

44、+) printf(“%d,“,p-x ); p=p-y;程序的运行结果是( )。(分数:2.00)A.20,30,B.30,17C.15,30,D.20,15, 解析:解析 题目中定义了一个全局结构体数组 a,结构体中包含两个成员;一个 int 型变量 x 和一个自身类型指针 y。所以,结构体数组 a 的初始化列表中每两个初始化一个结构体元素。主函数通过一个for 循环,连续调用了两次输出函数 printf(),每次输出 p 所指元素的 x 成员值。p 初始化时指向数组 a的首地址,即 a0的位置,所以第 1 次输出的值为 20。然后又将 a0的成员 y 的值赋给 p,y 在初始化时是 a+

45、1,所以 p 在第 2 次输出时指向的元素是 a1,故第 2 次输出的值为 15。所以本题最终输出结果是“20,15,”,应该选择 D。11.以下程序中函数 sort 的功能是对 a 所指数组中的数据进行由大到小的排序;void sort(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 aa10=1,2,3,4,5,6,7,8,9,10,i;sort(for(i=0;i10;i+)print(“%d,“,aai);printf(/n“);程序运行后的输出结果是( )

46、。(分数:1.00)A.1,2,3,4,5,6,7,8,9,10B.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,解析:解析 本题中首先定义一个长度为 10 的一个整型数组,并初始化为“1,2,3,4,5,6, 7,8,9,10”,然后调用排序函数 sort(),通过分析不难看出,sort()函数是对具有 n 个元素的 a 数组进行从大到小排序。由于函数的第一个参数是数组名,其对应的实参可以是函数名或地址。本题在调用该函数时,实参是scanf(%c%c%c%c,c5=getchar(); c6=getchar();putchar(c1); putchar(c2);printf(%c%c/n,c5,c6);程序运行后,若从键盘输入(从第 1 列开始)123回车45678回车则输出结果是( )。(分数:1.00)A.1267B.1256C.1278D.1245 解析:解析 在题目中,程序执行到 scanf()函数时,会暂停等待用户输入 4 个字符,按题意输入 1

展开阅读全文
相关资源
猜你喜欢
  • ISO 7960-1995 Airborne noise emitted by machine tools - Operating conditions for woodworking machines《机床噪声 木工机床的工作条件》.pdf ISO 7960-1995 Airborne noise emitted by machine tools - Operating conditions for woodworking machines《机床噪声 木工机床的工作条件》.pdf
  • ISO 7961-1994 Aerospace bolts test methods《航空航天 螺栓 试验方法》.pdf ISO 7961-1994 Aerospace bolts test methods《航空航天 螺栓 试验方法》.pdf
  • ISO 7963-2006 Non-destructive testing - Ultrasonic testing - Specification for calibration block No 2《无损检测 超声波检验 2号基准块规范》.pdf ISO 7963-2006 Non-destructive testing - Ultrasonic testing - Specification for calibration block No 2《无损检测 超声波检验 2号基准块规范》.pdf
  • ISO 7965-2-1993 Sacks - Drop test - Part 2 Sacks made from thermoplastic flexible film《袋 跌落试验 第2部分 热塑柔性薄膜袋》.pdf ISO 7965-2-1993 Sacks - Drop test - Part 2 Sacks made from thermoplastic flexible film《袋 跌落试验 第2部分 热塑柔性薄膜袋》.pdf
  • ISO 7967-1-2005 Reciprocating internal combustion engines - Vocabulary of components and systems - Part 1 Structure and external covers《往复式内燃机 零部件和系统词汇 第1部分 固定件.pdf ISO 7967-1-2005 Reciprocating internal combustion engines - Vocabulary of components and systems - Part 1 Structure and external covers《往复式内燃机 零部件和系统词汇 第1部分 固定件.pdf
  • ISO 7967-2-2010 Reciprocating internal combustion engines - Vocabulary of components and systems - Part 2 Main running gear《往复式内燃机 部件与系统词汇 第2部分 主要驱动装置》.pdf ISO 7967-2-2010 Reciprocating internal combustion engines - Vocabulary of components and systems - Part 2 Main running gear《往复式内燃机 部件与系统词汇 第2部分 主要驱动装置》.pdf
  • ISO 7969-1985 Manganese ores and concentrates Determination of sodium and potassium contents Flame atomic absorption spectrometric method《锰矿石和锰精矿 钠和钾含量的测定 火焰原子吸.pdf ISO 7969-1985 Manganese ores and concentrates Determination of sodium and potassium contents Flame atomic absorption spectrometric method《锰矿石和锰精矿 钠和钾含量的测定 火焰原子吸.pdf
  • ISO 797-1973 Aluminium and aluminium alloys Determination of silicon Gravimetric method《铝和铝合金 硅含量的测定 重量法》.pdf ISO 797-1973 Aluminium and aluminium alloys Determination of silicon Gravimetric method《铝和铝合金 硅含量的测定 重量法》.pdf
  • ISO 7973-1992 Cereals and milled cereal products determination of the viscosity of flour method using an amylograph《谷物和精制谷物制品 面粉粘度的测定 (淀粉)糊化力测定法》.pdf ISO 7973-1992 Cereals and milled cereal products determination of the viscosity of flour method using an amylograph《谷物和精制谷物制品 面粉粘度的测定 (淀粉)糊化力测定法》.pdf
  • 相关搜索

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

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