1、全国计算机等级考试笔试模拟试卷(2)二级公共基础知识和C语言程序设计(考试时间90分钟,满分loo)一、选择题(1)(10)、(21)(40)每题2分,(11)(20)每题1分,70分)(1)下面关于算法的叙述中,对的的是( )。 A)算法的执行效率与数据的存储结构无关 B)算法的有穷性是指算法必须能在执行有限个环节之后终止 c)算法的空间复杂度是指算法程序中指令(或语句)的条数 D)以上三种描述都对的(2)下列二叉树描述中,对的的是( )。 A)任何一棵二叉树必须有一个度为2的结点B)二叉树的度可以小于2 c)非空二叉树有O个或1个根结点 D)至少有2个根结点(3)假如进栈序列为A,B,c,
2、D,则也许的出栈序列是( )。 A)C,A,D,B B)B,D,C,A C)C,D,A,B D)任意月顷序(4)下列各选项中,不属于序言性注释的是( )。 A)程序标题 B)程序设计者 c)重要算法 D)数据状态(5)下列模式中,可以给出数据库物理存储结构与物理存取方法的是( )。 A)内模式 B)外模式 c)概念模式 D)逻辑模式(6)下列叙述中,不属于软件需求规格说明书的作用的是( )。 A)便于用户,开发人员进行理解和交流 B)反映出用户问题的结构,可以作为软件开发工作的基础和依据 C)作为确认测试和验收的依据 D)便于开发人员进行需求分析(7)下列不属于软件工程3个要素的是( )。 A
3、)工具 B)过程 C)方法 D)环境(8)数据库系统在其内部具有3级模式,用来描述数据库中全体数据的全局逻辑结构和特 性的是( )。 A)外模式 B)概念模式 C)内模式 D)存储模式(9)将ER图转换到关系模式时,实体与联系都可以表达成( )。 A)属性 B)关系 C)记录 D)码(10)某二叉树中度为2的结点有10个,则该二叉树中有( )个叶子结点。 A)9 B)10 C)11 D)12(11)以下叙述中对的的是( )。 A)c程序中注释部分可以出现在程序中任意合适的地方 B)C程序的书写格式是固定的,每行只能写一条语句 c)构成c程序的基本单位是函数,所有函数名都可以由用户命名 D)在对
4、c语言程序进行编译时,可以发现注释行中的拼写错误(12)下面的程序在编译时产生错误,其犯错因素是( )。 #include main() int l_case;float pfin; pnntf(”请输入2个数:”); seaf(”df,&l_case,&printF); pdmf(”d舳”,l_case,printF); ) A)定义语句犯错,1 case不能作为变量名 B)定义语句犯错,printF不能用作用户自定义标记符 C)定义语句无错,scanf不能作为输入函数使用 D)定义语句无错,printf不能输出1 case的值(13)以下不对的的转义字符是( )。 A)- B)d C)s
5、D)088(14)下面程序的运营结果是( )。 y=5;x=14;)r=(x=3。y,x+6),x1); pnntff”x=d,y=d,x,y); A)x=27,y=27 B)x=12,y=13 C)x=15,y=14 D)x=y=27(15)sizeof(ch扪是( )。 A)一种函数调用 B)一个整型表达式 C)一个字符型表达式 D)一个不合法的表达式(16)下列4个程序中,完全对的的是( )。 A)#include B)#include main(); main() *programming。 programming printf(”programming!n”);printff”pro
6、gramming!kn”); C)#includeD)include main() main() programming| lL*programmingf printf(”programming!n”);pfintff”programming!n”);(17)设变量均已对的定义,若要通过scanf(”dcdc”,&al,&cl,&a2,&c2);语句为变量a1 和a2赋数值10和20,为变量c1和c2赋字符x和Y。下列所示的输入形式中对的的 是(注:口代表空格字符)( )。 A)10DX20DY B)100X20DY C)10DXD)10X 20Y 20Y(18)两次运营下面的程序,假如从键盘
7、上分别输入3和2,则输出结果是( )。 #include main() intx; scanf(”d-,&x); 。if(x+2)printf(”d,x);else printf(”dIl”,x一); ) A)4和3 B)4和2 C)4和l D)3和2(19)以下叙述中不对的的是( )。 A)在不同的函数中可以使用相同的名字的变量 B)函数中的形式参数是局部变量 C)在一个函数内定义的变量只在本函数范围内有效 D)在一个函数内的复合语句中定义的变量在本函数范围内有效(20)运营下面的程序,输入字符串MicrosoftVisual Studio,则程序的执行结果是( )。 #include ma
8、in() char Chr201; 、 scanf(”s”,&Chr); pfintff”sIl”Chr); ) 。 A)MicrosoftVisual Studio B)M C)Microsoft D)MicrosoftVisualStudio(21)若有“double a:”,则对的的输入语句是( )。 A)scanf(”lf,a); B)scanf(”ft,&a); C)scanf(”lf,&a)D)scanf(”le”,a);(22)if语句的基本形式为:if(表达式)语句,其中“表达式”( )。 A)可以是任意合法的表达式 B)必须是逻辑表达式 C)必须是逻辑表达式或关系表达式 D)
9、必须是关系表达式(23)若i、i已定义成int型,则以下程序段中内循环体的总执行次数是( )。 for(i=6;i0;i一) for(j=0j4j+) A)20 B)24 C)25 D)30(24)以下选项中非法的字符常量是( )。 A) B)0201 C)xAAD)0(25)以下程序的输出结果是( )。 #include int m=13; int fun(int X,int y) intm=2; return(x0Ym); main() int a=7,b=6; printf(”d-,fun(a,b)rn); ) A)1 B)3 C)7 D)10(26)下面程序运营后的输出结果是( )。
10、群includemain()int a5】。1,0,4,2,0,b5】=1,2,3,4,5,i,s=0; for(i=0;i5;i+)s=s+bai; printf(”dLn”,s);(27)已知下列函数定义: fun(intb,int c,int n,int data) intk; for(k=O;km*n;k+) *b=data; b+; 则调用此函数的对的写法是(假设变量a的说明为int a50】)( )。 、 A)fun(唯a,4,5,1); B)fun(&a,4,5,1); C)fun(int*)a,4,5,1);D)fun(a,4,5,1);(28)以下程序段的输出结果是( )。
11、#include main0 char p【4】=tABC”,”DEn”GHI”; int i; for(i=0;i3;i+)puts(pi);A)A B CC)AB CB)A D GD)AB C D E F G H I(29)下面程序的运营结果是( )。 #include #include main0 , char。sl=”abDuj”; charosE=”ABdUG”: intt; t=strcmp(s1,s2); printf(”dt,t); ) A)正数 B)负数 C)零 D)不拟定的值群includemain()int a5】。1,0,4,2,0,b5】=1,2,3,4,5,i,s=
12、0; for(i=0;i5;i+)s=s+bai; printf(”dLn”,s);(27)已知下列函数定义: fun(intb,int c,int n,int data) intk; for(k=O;km*n;k+) *b=data; b+; 则调用此函数的对的写法是(假设变量a的说明为int a50】)( )。 、 A)fun(唯a,4,5,1); B)fun(&a,4,5,1); C)fun(int*)a,4,5,1);D)fun(a,4,5,1);(28)以下程序段的输出结果是( )。 #include main0 char p【4】=tABC”,”DEn”GHI”; int i; f
13、or(i=0;i3;i+)puts(pi);A)A B CC)AB CB)A D GD)AB C D E F G H I(29)下面程序的运营结果是( )。 #include #include main0 , char。sl=”abDuj”; charosE=”ABdUG”: intt; t=strcmp(s1,s2); printf(”dt,t); ) A)正数 B)负数 C)零 D)不拟定的值C)程序运营时为结构体st分派8字节存储单元 D)类型名struct st可以通过extem关键字提前引用(37)有以下程序: #include intfun(int。妯 intb=0; b=。k+b
14、: return(b); , main() int a10=1,2,3,4,5,6,7,8),i; for(i=2;i4;i+)printf(”dt,(&a【i】)I) printf(”ll”); , 程序运营后的输出结果是( )。 A)10 12 B)8 10 C)3 4 D)10 28(38)设有一联合体变量定义如下: union data long a; float b: int c; chard: ; uniondatax: 执行下列语句后,对的的联合体变量X的值是( )。 Xa=111111; xb=2222; xc=21 546; xd-R: A)llllll B)2222 C)2
15、1546 D)R(39)若x=2,y=3,则x&y的结果是( )。 A)0 B)2 C)3 D)5(40)已知一个文献中存放若干工人档案记录,其数据结构如下: struct a charnumber100; int age; float p【6; 定义一个数组:struct a number1 0; 假定文献已对的打开,不能对的地从文献中读入10名工人数据到数组b中的是( A)fread(b,sizeof(struct a),1 0,f1); B)for(i=0;il 0;i+) fread(b【i,sizeof(struct a),1,f1); C)for(i=0;i1 0;i+) D)fo
16、r(i=0;i0)开始的后续元素全 部向前移动一个位置。请填空。 void fun(int aN,int k) int i;for(i=lk;iN;i+) a=ai; (8)以下程序运营后的输出结果是 main() int a=3,b=4,C=5,t-79; if(ba&ac)t=a;al_c;c=t; iffac&bc)t=b;b=a;a=t; printf(”dddIl”,a,b,c); )(9)以下程序的定义语句中,x1的初值是,程序运营后输出的内容是 jfIinclude main() int x口=l,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,。p【4
17、】,i; - for(i=0;i4;i+) pi=&x2i+1】,printf(”d”,pi】【O】); printf(”n”); (10)以下程序的输出结果是 #include void swap(inta,intb) int。t; t=a;a=b;b-t;mainO int i=3,j=5,。p=&i,q-j; swap(p,q);printf(”ddn”,p,q);1(11)以下程序的输出结果是 #include int fun(int x1 staticintt=-O; return(t+=x); ) main() int s,i; for(i=1;iO) str2*i=stri;str2il】=怫;i一;) pdntff”sIl”str); ) main() char str40; scanf(”sIl”,str);insert(str); ,(13)以下程序的功能是:通过函数func输入字符并记录输入字符的个数。输入时用字符 作为输入结束标志。请填空。 #include +long; 函数说明语句Imain() long n; n=funcO;printf(”n=ldhn,n); longfuncOlong m; for(re=O;getchar()I=; ); return m:)