《2020年全国计算机二级等级考试模拟试卷及答案(共四套).pdf》由会员分享,可在线阅读,更多相关《2020年全国计算机二级等级考试模拟试卷及答案(共四套).pdf(106页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2020年全国计算机二级等级考试模拟试卷及答案(共四套)2020年全国计算机二级等级考试模拟试卷及答案(第一套)1下列叙述中正确的是()。A)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构0线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构D)线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性参考答案:B2.下列叙述中正确的是()。A)栈是一种先进先出的线性表B)队列是一种后进先出的线性表0栈与队列都是非线性结构D)以上三种说法都不对参考答案:D3.软件测试的目的是()oA)评估软件可靠性B)发现并改
2、正程序中的错误0 改正程序中的错误D)发现程序中的错误参考答案:D4.在软件开发中,需求分析阶段产生的主要文档是()。A)软件集成测试计划B)软件详细设计说明书0 用户手册D)软件需求规格说明书参考答案:D5.软件生命周期是指()。A)软件产品从提出、实现、使用维护到停止使用退役的过程B)软件从需求分析、设计、实现到测试完成的过程0软件的开发过程D)软件的运行维护过程参考答案:A6.面向对象方法中,继承是指()oA)一组对象所具有的相似性质B)一个对象具有另一个对象的性质0各对象之间的共同性质D)类之间共享属性和操作的机制参考答案:D7.层次型、网状型和关系型数据库划分原则是()。A)记录长度
3、B)文件的大小0联系的复杂程度D)数据之间的联系方式参考答案:D8.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是()。A)一对一B)一对多0 多对多D)多对一参考答案:C9.数据库设计中反映用户对数据要求的模式是()。A)内模式B)概念模式0外模式D)设计模式参考答案:C10.有三个关系R、S和T如下:则由关系R和S得到关系T的操作是()。A)自然连接B)差0交D)并参考答案:B11.计算机能直接执行的程序是A)源程序B)目标程序0汇编程序D)可执行程序参考答案:D12.以下叙述中正确的是A)C语言规定必须用main作为主函数名,程序将从此
4、开始执行B)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行0 C语言程序将从源程序中第一个函数开始执行D)main的各种大小写拼写形式都可以作为主函数名,如:MAIN,Main 等参考答案:A13.以下选项中可用作C程序合法实数的是A)3.0e0.2B).leOC)E9D)9.12E参考答案:B14.下列定义变量的语句中错误的是A)int Jnt;B)double int_;C)char For;D)float US$;参考答案:D15.表达式:(int)(double)9/2)-9%2 的值是A)0B)3C)4D)5参考答案:B16.设变量均已正确定义,若要通过scanf(
5、%d%c%d%c,&al,&cl,&a2,&c2);语句为变量a l和a2赋数值10和2 0,为变量c l和c2赋字符X和Y。以下所示的输入形式中正确的是(注:口代表空格字符)A)10LlX 回车20口 丫 回车B)10EJX2COY 回车C)10X 回车20Y回车D)1ODXLI2ODY 回车参考答案:C17.以下选项中不能作为C语言合法常量的是A)O.le+6B)cdC)aD)011参考答案:B18.f语句的基本形式是:if(表达式)语句,以下关于 表达式 值的叙述中正确的是A)必须是逻辑值B)必须是整数值0 必须是正数D)可以是任意合法的数值参考答案:D1 9.有如下嵌套的if语句if(
6、ab)if(ac)k=a;else k=c;elseif(bc)k=b;else k=c;以下选项中与上述if语句等价的语句是A)k=(ab)?(bc)?b:c);B)k=(ab)?(ac)?a:c):(bc)?b:c);C)k=(ab)?a:b;k=(bc)?b:c;D)k=(ab)?a:b;k=(ac)?a:c;参考答案:B2 0,有以下程序#include main()int k=5;while(-k)printf(%d,k-=3);printf(n);执行后的输出结果是A)1B)20 4D)死循环参考答案:A21.有以下程序#include main()int ij;for(i=3;i
7、=l;i-)for(j=l;j=2;j+)printf(%d,i+j);printf(n);程序的运行结果是A)432543B)4534230233445D)233423参考答案:B22有以下程序#include main()int k=5,n=0;do switch(k)case 1:case 3:n+=l;k-;break;default:n=0;k-;case 2:case 4:n+=2;k-;break;printf(%d,n);while(k0&n5);程序运行后的输出结果是A)02356B)0235C)235D)2356参考答案:C23.以下关于return语句的叙述中正确的是A)
8、一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句0定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返回到调用处参考答案:B24.已定义以下函数int fun(int*p)return*p;fun函数返回值是A)一个整数B)不确定的值0形参p中存放的值D)形参p的地址值参考答案:A25.以下程序段完全正确的是A)int*p;scanf(%d,&p);B)int*p;scanf(%d,p);C)int k,*p=&k;scanf(%d,p);D)int k,*p;*p=&k;scan
9、f(%d,p);参考答案:C26.设有定义double a10,*s=a;以下能够代表数组元素a的是A)(*s)3B)*(s+3)0 *s3D)*s+3参考答案:B2 7,有以下程序#include void f(int*q)int i=0;for(;i5;i+)(*q)+;main()int a5=1,2,3,4,5,i;f(a);for(i=0;i5;i+)printf(%d/,ai);程序运行后的输出结果是A)6,2,3,4,5,B)2,2,3,4,5,0 1,2,3,4,5,D)2,3,4,5,6,参考答案:A2 8.有以下程序#include int fun(int(*s)4,int
10、 n,int k)int m,i;m=s0k;for(i=l;im)m=sik;return m;main()inta44=l,2,3,4,(11,12,13,14,21,22,23,24,31,32,33,34;printf(%dn,fun(a,4/0);程序的运行结果是A)4B)34C)31D)32参考答案:C29.以下选项中正确的语句组是A)char*s;s=BOOK!;B)char*s;s=BOOK!;C)char s10;s=BOOK!;D)char s;s=BOOK!;参考答案:B30.若有定义语句:char*sl=OK,*s2=ok;以下选项中,能够输出OK的语句是A)if(st
11、rcmp(slzs2)!=0)puts(s2);B)if(strcmp(sl,s2)!=0)puts(sl);C)if(strcmp(sl,s2)=l)puts(sl);D)if(strcmp(sl,s2)=O)puts(sl);参考答案:B31.以下程序#include void fun(char*p)(+P;printf(%sn,*p);main()(char*a=Morning,Afternoon,Evening,Night;fun(a);程序的运行结果是A)AfternoonB)fternoonC)MorningD)orning参考答案:A32有以下程序,程序中库函数islower(c
12、h)用以判断ch中的字母是否为小写字母#include#include void fun(char*p)(int i=0;while(pi)(if(pi=&islower(pi-l)pi-l=pi-l-a+A;i+;main()char sl100=ab cd EFG!;fun(sl);printf(%sn,sl);程序运行后的输出结果是A)ab cd EFg!B)Ab Cd EFg!C)ab cd EFG!D)aB cD EFG!参考答案:D3 3.有以下程序#include int f(int x)(int y;if(x=0 1 1 x=1)return(3);y=x*x-f(x-2);r
13、eturn y;main()(int z;z=f;printf(%dn,z);)程序的运行结果是A)0B)9C)6D)8参考答案:C3 4.有以下程序#include int fun(int x,int n)static int sum=O,i;for(i=0;isex);D)scanf(%cr,ps-age);参考答案:D3 6.若有以下语句typedef struct S int g;char h;T;以下叙述中正确的是A)可用S定义结构体变量B)可用T定义结构体变量C)S是struct类型的变量D)T是struct S类型的变量参考答案:B3 7,有以下程序#include#includ
14、e struct A(int a;char b10;double c;;struct A f(struct A t);main()struct A a=1001;,ZhangDa/1098.0;a=f(a);printf(%d,%s,%6.1fn,a.a,a.b,a.c);struct A f(struct A t)(t.a=1002;strcpy(t.b/ChangRong);t.c=1202.0;return t;程序运行后的输出结果是A)1002,ZhangDa,1202.0B)1002,ChangRong,1202.0C)lOOLChangRong,1098.0D)lOOLZhangD
15、a,1098.0参考答案:B3 8.设有宏定义:#define lsDIV(k,n)(k%n=l)?1:0)且变量m已正确定义并赋值,则宏调用:lsDIV(m,5)&lsDIV(m,7)为真时所要表达的是A)判断m是否能被5和7整除B)判断m被5和7整除是否都余10判断m被5或者7整除是否余1D)判断m是否能被5或者7整除参考答案:B3 9.有以下程序#include main()(int 3=1,b=2,c=3,x;x=(aAb)&c;printfC%dXnx);程序的运行结果是A)3B)1C)2D)0参考答案:A4 0.有以下程序#include main()(FILE*fp;int k,
16、n;a6=l,2,3,4,5,6;fp=fopen(d2.dat,w);fprintf(fp,%d%d%dn/aO,al,a2);fprintf(fp,%d%d%dn,a3,a4,a5);fclose(fp);fp=fopen(d2.dat,r);fscanf(fp,%d%d,&k,&n);printf(%d%dn,k,n);fclose(fp);程序运行后的输出结果是A)12B)14C)1234D)123 456参考答案:D2020年全国计算机二级等级考试模拟试卷及答案(第二套)1.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序
17、是()。A)12345ABCDEB)EDCBA54321C)ABCDE12345D)54321EDCBA参考答案:B2.下列叙述中正确的是()。A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况0在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D)循环队列中元素的个数是由队头指针和队尾指针共同决定参考答案:D3.在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。A)O(H)B)O(n2)C)S&n:D)O(n l o g,n)参考答案:c4.下列叙述中正确的是()oA)顺序存储结构的存储一
18、定是连续的,链式存储结构的存储空间不一定是连续的B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构0顺序存储结构能存储有序表,链式存储结构不能存储有序表D)链式存储结构比顺序存储结构节省存储空间参考答案:A5 .数据流图中带有箭头的线段表示的是()。A)控制流B)事件驱动C)模块调用D)数据流参考答案:D6 .在软件开发中,需求分析阶段可以使用的工具是()。A)N-S 图B)DFD 图C)PAD 图D)程序流程图参考答案:B7.在面向对象方法中,不属于对象基本特点的是()。A)一致性B)分类性C)多态性D)标识唯一性参考答案:A8.一间宿舍可住多个学生,则实体宿舍和学生之间的联系是)
19、A)一对一B)一对多C)多对一D)多对多参考答案:B9.在数据管理技术发展的三个阶段中,数据共享最好的是()。A)人工管理阶段B)文件系统阶段C)数据库系统阶段D)三个阶段相同参考答案:C10.有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。ABCm13A)笛卡尔积B)交C)并D)自然连接参考答案:D11.下列叙述中错误的是()。A)C程序可以由多个程序文件组成B)一个C语言程序只能实现一种算法C)C程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在参考答案:B12.以下选项中,能用作数据常量的是()。A)115LB)0118C)1.5el
20、.5D)0115参考答案:A13.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()oA)大写字母B)下划线C)数字字符D)连接符参考答案:D14.设变量已正确定义并赋值,以下正确的表达式是()。A)x=y+z+5,+yB)int(15.8%5)C)x=y*5=x+zD)x=25%5.0参考答案:A1 5 .设有定义:i n t x=2;,以下表达式中,值不为6的是()。A)2*x,x+=2B)x+,2*xC)x*=(l+x)D)x*=x+l参考答案:A1 6 .有以下程序:#i n c l u d e m a i n()i n t x,y,z;x=y=l;z=x +,y +,+y
21、;p r i n t f(%d,%d,%d n ,x,y,z);)程序运行后的输出结果是()oA)2,3,3B)2,3,2C)2,3,1D)2,2,1参考答案:C1 7 .有以下程序:#i n c l u d e m a i n()c h a r c l,c2;c l=A +8 4;c 2=A +8 5 ;p r i n t f(%c,%d n ,c l,c 2);)已知字母A的A S C II码为6 5,程序运行后的输出结果是()oA)E,6 8B)D,6 9C)E,DD)输出无定值参考答案:A1 8.若有定义i n t x,y;并已正确给变量赋值,则以下选项中与表达式(x y)?(x+):
22、(y +)中的条件表达式(x y)等价的是()。A)(X y 0)B)(x y 0)D)(x y=0)参考答案:A1 9.有以下程序:#i n c l u d e m a i n()i n t x=l,y=0;i f(!x)y+;e l s e i f (x=0)i f (x)y+=2;e l s e y+=3;p r i n t f(%d n ,y);)程序运行后的输出结果是()oA)3B)20 1D)0参考答案:D2 0.若有定义:f l o a t x=1.5;i n t a 1,b =3,c =2;则正确的s w i t c h语句是()oA)s w i t c h(a+b)c a s
23、 e 1 :p r i n t f(*n );c a s e 2+1 :p r i n t f(*n );B)s w i t c h(i n t)x);c a s e 1 :p r i n t f(*n );case 2:printf(*n);C)switch(x)case 1.0:printf(*n);case 2.0:printf(*n);D)switch(a+b)case 1 :printf(*n);case c:printf(*n);参考答案:A2 1.有以下程序:#include main()int y=9;for(;y0;y-)if(y%3=0)printf(%d,y);)程序的运
24、行结果是()oA)852B)963C)741D)875421参考答案:A2 2.有以下程序:#include main()int i,j,m=l;for(i=l;i0;j)if(i*j3)break;m*-i*j;)printf(m=%dn,m);)程序运行后的输出结果是()oA)m=4B)m=2C)m=6D)m=5参考答案:C2 3.有以下程序:#include int fun(int x,int y)if(x!=y)return(x+y)/2);elsereturn(x);)m a i n()i n t a=4,b=5,c=6;p r i n t f(%d n ,f u n(2*a,f u
25、 n (b,c);)A)6B)3C)8D)1 2参考答案:A2 4.有以下程序:#i n c l u d e i n t a d d(i n t a,i n t b)r e t u r n (a+b);m a i n()i n t k,(*f)(),a=5,b=10;f=a d d;)则以下函数调用语句错误的是()-A)k=f(a,b);B)k=a d d(a,b);0 k=(*f)(a,b);D)k=*f(a,b);参考答案:D25.有以下程序:#include main()int n,*p=NULL;*p=&n;printf(Input n:);scanf(%d,&p);printf(ou
26、tputn:);printf(%dn,p);)25.2 6.下列定义数组的语句中,正 确 的 是()oA)#define N 10int xN;B)int N=10;int xN;C)int x0.10;D)int x ;参考答案:A26.该程序试图通过指针p为变量n读入数据并输出,但程序有多处错误,以下语句正确的是()A)int n,*p=NULL;B)*p=&n;C)scanf(%d,&p)D)printf(%dn,p);参考答案:A2 7.有以下程序:#include main()int a=2,3,5,4,i;for(i=0;i4;i+)switch(i%2)case 0:switch
27、(ai%2)case 0:ai+;break;case 1 :ai-;break;case 1 :ai=0;)for(i=0;i4;i+)printf(%d,ai);)程序运行后的输出结果是()oA)0304B)2050C)3 344printf(n);D)3040参考答案:D2 8.有以下程序:#i n c l u d e m a i n()i n t b 3 3 =0,l,2,0,l,2,0,l,2 ,i,j,t=l;f o r(i=0;i 3;i+)f o r(j=i;j =i;j +)t+=b i b j i ;p r i n t f(%d n ,t);)程序运行后的输出结果是()oA
28、)3B)40 1D)9参考答案:B29.以下语句中存在语法错误的是()。A)c h a r s s 6 2 0 ;s s l =r i g h t?;B)c h a r s s()2 0 J=r i g h t?;C)c h a r *s s 6 ;s s l =r i g h t?;D)c h a r *s s()=r i g h t?;参考答案:A30.以下不能将s所指字符串正确复制至U t所指存储空间的是()A)do*t+=*s+;while(*s);B)for(i=0;ti=si;i+);C)while(*t=*s)t+;s+D)for(i=0,j=0;ti+=sj+;);参考答案:A
29、3 1.有以下程序:#include void swap(char*x,char*y)char t;t=*x;*x=*y;*y=t;)main()char*sl=abc,*s2=123;swap(sl,s2);printf(%s,%sn,si,s2);)程序执行后的输出结果是()oA)321,cbaB)abc,123C)123,abcD)Ibc,a23参考答案:D3 2.有以下函数:in t fu n(char *x,char *y)in t n=0;w hil e(*x=*y)&*x!=0)x+;y+;n+;r et u r n n ;)函数的功能是()oA)将y所指字符串赋给x所指存储空间
30、B)查找x和y所指字符串中是否有00 统计x和y所指字符串中最前面连续相同的字符个数D)统计x和y所指字符串中相同的字符个数参考答案:C3 3.有以下程序:#in cl u de in t fu n()s t at ic in t x=l;x*=2;r et u r n x ;)m ain()in t i,s 1;fo r(i=l;i =3;i +)s*=fu n();p r in t f(%dn ,s);)程序运行后的输出结果是()oA)10B)30C)0D)64参考答案:D34.在一个C源程序文件中所定义的全局变量,其作用域为()。A)由具体定义位置和ex t er n说明来决定范围B)所
31、在程序的全部范围C)所在函数的全部范围D)所在文件的全部范围参考答案:A35.以下叙述中错误的是()。A)可以通过t y p edef增加新的类型B)可以用t y p edefW已存在的类型用一个新的名字来代表C)用t y p edef定义新的类型名后,原有类型名仍有效D)用t y p edef可以为各种类型起别名,但不能为变量起别名参考答案:A36.有以下程序:#in cl u de struct S int a,b;data2=10,100,20,200);main()struct S p=datal;printf(%dn,+(p.a);)程序运行后的输出结果是()oA)10B)11C)2
32、0D)21参考答案:D3 8.有以下程序:#include main()unsigned char a=2,b=4,c=5,d;d=a|b;d&=c;printf(%dn,d);程序运行后的输出结果是()oA)3B)4C)5D)6参考答案:B3 9.有以下程序:#in cl u de#in cl u de m ain()in t *a,*b,*c;a=b=c=(in t *)m al l o c(s iz eo f(in t);*a=l;*b=2,*c=3;a=b;p r in t f(%d,%d,%dn ,*a,*b,*c);)程序运行后的输出结果是()oA)1,1,3B)2,2,3C)1,
33、2,3D)3,3,3参考答案:D4 0.以下叙述中正确的是()oA)当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失B)打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖0 在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据D)C 语言中的文件是流式文件,因此只能顺序存取数据参考答案:A2020年全国计算机二级等级考试模拟试卷及答案(第三套)1.下列叙述中正确的是()oA)栈是先进先出的线性表B)队列是先进后出”的线性表0循环队列是非线性结构D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构参考答案:D2.支持子程序
34、调用的数据结构是()0A)栈B)树0 队列D)二叉树参考答案:A3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是()。A)10B)8C)6D)4参考答案:C4.下列排序方法中,最坏情况下比较次数最少的是()。A)冒泡排序B)简单选择排序0直接插入排序D)堆排序参考答案:D5 .软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是()。A)编译程序B)操作系统0教务管理系统D)汇编程序参考答案:C6 .下面叙述中错误的是()A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行错误定位是程序调试的必要步骤0 程序调试通常也称为D e b ugD)软
35、件测试应严格执行测试计划,排除测试的随意性参考答案:A7 .下面叙述中错误的是()A)软件测试的目的是发现错误并改正错误B)对被调试的程序进行错误定位是程序调试的必要步骤0 程序调试通常也称为D e b ugD)软件测试应严格执行测试计划,排除测试的随意性参考答案:A8 .数据库应用系统中的核心问题是()。A)数据库设计B)数据库系统设计0数据库维护D)数据库管理员培训参考答案:A9 .有两个关系R,S如下:由关系R通过运算得到关系S,则所使用的运算为()。IZJA)选择B)投影0插入D)连接参考答案:B1 0 .将E R图转换为关系模式时,实体和联系都可以表示为()。A)属性B)键0关系D)
36、域参考答案:C1 1 .以下叙述中错误的是()。A)使用三种基本结构构成的程序只能解决简单问题B)结构化程序由顺序、分支、循环三种基本结构组成0 C语言是一种结构化程序设计语言D)结构化程序设计提倡模块化的设计方法参考答案:A1 2.以下四个程序中,完全正确的是()oA)#in c l ud e m a in();/*/p r o gr a m m in g/*/p r in tf(p r o gr a m m in g!n );B)#in c l ud e m a in()/*p r o gr a m m in g*/printf(programming!n);C)#include main
37、()/*/*programming*/*/printf(programming!n);D)include main()/*programming*/printf(programming!n);参考答案:B13.C源程序中不能表示的数制是()oA)十六进制B)八进制0十进制D)二进制参考答案:D14.以下选项中,能用作用户标识符的是()。A)_ 0B)8_8C)voidD)unsigned参考答案:A1 5 .若有定义语句:in t x=1 0;,则表达式x=x+x的值为()。A)0B)-2 0C)-1 0D)1 0参考答案:C1 6 .有以下程序:#in c l ud e m a in()in
38、 t a=l,b=0;p r in tf(%d,b=a+b);p r in tf(%d n ,a=2*b);A)1,2B)1,0C)3,2D)0,0参考答案:A1 7.有以下程序:#in c l ud e m a in()in t a l,a 2;c ha r c l,c 2;scanf(%d%c%d%c,&al,&cl,&a2,&c2);printf(%d,%c,%d,%c,al,cl,a2,c2);)若想通过键盘输入,使得a l的值为12,a2的值为34,cl的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b则正确的输入格式是(以下代表空格,代表回车)()。A)12-34
39、一,bB)12一,a-3 4 bC)12,a,34,bD)12a34b参考答案:D18.若变量已正确定义,在1“亚冲向1 耳 (111,1);中,以下不可替代W的是()。A)ab+cB)ch=getchar()C)a=b+cD)a+参考答案:A19.有以下程序段:#include int a,b,c;a=10;b=50;c=30;if(a b)a=b,b=c;c=a;p r in t f(a=%d b=%d c=%dn ,a,b,c);程序的输出结果是()oA)a=10b=50c=30B)a=10b=50c =10C)a=10b=30c =10D)a=50b=30c=50参考答案:B20.有以
40、下程序段:#in c l u de in t a,b,c;a=10;b=50;c=30;if(a b)a=b,b=c;c=a;p r in t f(a=%d b=%d c=%dn”,a,b,c);程序的输出结果是()oA)a=10b=50c=30B)a=10b=50c =10C)a=10b=30c =10D)a=50b=30c=50参考答案:B21.以下不构成无限循环的语句或语句组是()。A)n=0;do +n;w hil e(n=0);B)n=0;w hil e(1)n+;C)n=1 0;w hil e(n);n-;D)fo r(n=0,i=l;i+)n+=i;参考答案:A2 2.有以下程序
41、:#in c l u de m a in()in t c=0,k;fo r (k=1;k 3;k+)s w it c h(k)defa u l t:c+=k;c a s e 2:c+;b r ea k;c a s e 4:c+=2;b r ea k;)p r in t f(%dn ,c);)程序运行后的输出结果是()oA)7B)5C)3D)9参考答案:C2 3.有以下程序:#in c l u de in t f(in t x,in t y)r et u r n(y x)*x);m a in()in t a=3,b=4,c=5,d;d=f(f(a,b),f(a,c);p r in t f(%dn
42、 ,d);)程序运行后的输出结果是()oA)7B)10C)8D)9参考答案:D2 4.若有定义语句:do u b l e a,*p=&a;是()。A)定义语句中的*号是一个间址运算符B)定义语句中的*号是一个说明符以下叙述中错误的0 定义语句中的P只能存放double类型变量的地址D)定义语句中,*p=&a把变量a的地址作为初值赋给指针变量p参考答案:A25.若有定义语句:double x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是()oA)scanf(%lf%le,px,py);B)scanf(%f%f&x,&y);C)scanf(%f%f,x,y);D)sca
43、nf(%lf%lf,x,y);参考答案:A26.以下定义数组的语句中错误的是()oA)int num3=1,2,3,4,5,6);B)int num24=1,2,3,4,5,6;C)int num=1,2,3,4,5,6;D)int num4=1,2,34,5,6;参考答案:B27.有以下程序:#include void fun(int a,int b)int t;t=a;a=b;b=t;m a in()in t c 10=l,2,3,4,5,6,7,8,9,0,i;fo r (i=0;i10;i+=2)fu n(c i,c i+1);fo r (i=0;i10;i+)p r in t f(%
44、d,c i);p r in t f(n );)程序的运行结果是()oA)1,2,345,6,7,8,9,0,B)2,1,4,3,658,7,0,9,0 0,9,8,7,6,5,4,321,D)0,1,2,345,6,7,8,9,参考答案:A2 8.有以下程序:#in c l u de m a in()in t x 3H2=0,i;fo r(i=0;i3;i+)s c a n f(%d,x i);p r in t f(%3d%3d%3dn ,x 00J,x 0l,x l 0);)若运行时输入:2 4 6 回车,则输出结果为()oA)2 0 4B)2 0 00 2 4 0D)2 4 6参考答案:A
45、29.有以下程序段:#include int j;float y;char name50;scanf(%2d%f%s,&j,&y,name);当执行上述程序段,从键盘上输入55566 7777abc后,y的值为()。A)566.0B)55566.0C)7777.0D)566777.0参考答案:A30.下列语句组中,正 确 的 是()。A)char*s;s=Olympic;B)char s7;s=Olympic;C)char*s;s=Olympic;D)char s7J;s=Olympic;参考答案:A31.有以下函数:int fun(char*s)c ha r *t=s;w hil e(*t+
46、);r et u r n(t s);)该 函 数 的 功 能 是()A)计算s所指字符串的长度B)比较两个字符串的大小0 计算s所指字符串占用内存字节的个数D)将s所指字符串复制到字符串t中参考答案:A3 2.有以下程序(注:字符a的A SC H码值为97):#in c l u de m a in()c ha r *s =a b c ;do p r in t f(%d,*s%10);+s;w hil e(*s );)程序运行后的输出结果是()oA)78 9B)a b cC)78 9 0D)979899参考答案:A33.设有如下函数定义:#include int fun(int k)if(kl)
47、return 0;else if(k=l)return 1;else return fun(k-1)+1 ;)若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是()。A)2B)3C)4D)5参考答案:B34.有以下程序:#include int f(int n);main()int a 3,s;s=f(a);s=s+f(a);printf(%dn,s);)in t f(in t n)s t a t ic in t a =1;n+=a+;r et u r n n;)程序运行后的输出结果是()oA)9B)8C)7D)10参考答案:A3 5.设有定义:s t r u c t c o
48、m p l ex in t r ea l,u n r ea l;da t a l =1,8 ,da t a 2;则以下赋值语句中错误的是()oA)da t a 2=(2,6);B)da t a 2=da t a l;C)da t a 2.r ea l=da t a l .r ea l ;D)da t a 2.r ea l=da t a l .u n r ea l ;参考答案:A3 6.有以下程序:#include struct Sint n;int a20;void f(struct S*p)int i,j,t;for(i=0;in 1 ;i+)for(j=i+l;jn;j+)if(p-ai
49、p-aj)t=p-ai;p-a i=p-aj;p-aj=t;)main()int i;struct S s=10,2,3,1,6,8,7,5,4,10,9;f(&s);for(i=0;is.n;i+)printf(%d,s.ai);)程序运行后的输出结果是()oA)2,3,1,6,8,7,5,4,10,9,B)10,9,8,7,6,5,4,3,2,0 1,2,3,4,5,6,7,8,9,10,D)10,9,8,7,6,1,2,3,4,5,参考答案:C3 7.有以下程序:#include struct Sint n;int a20;void f(struct S*p)int i,j,t;for(
50、i=0;in 1 ;i+)for(j=i+l;jn;j+)if(p-aij p-aj)t=p-ai;p-a i=p-aLj;p-aj=t;)main()int i;struct S s=10,2,3,1,6,8,7,5,4,10,9;f(&s);for(i=0;is.n;i+)printf(%d,s.ai);)程序运行后的输出结果是()oA)2,3,1,6,8,7,5,4,10,9,B)10,9,8,7,6,5,4,3,2,1,0 1,2,3,4,5,6,7,8,9,10,D)10,9,8,7,6,1,2,3,4,5,参考答案:C3 8.以下关于宏的叙述中正确的是()oA)宏替换没有数据类型限