广西计算机二级C笔试历年真题3
2010广西壮族自治区计算机等级考试试题 二级C试题考试题库
A、进行读写保护设置 B、没有任何作用
C、进行读保护设置 D、进行写保护设置
18、目前最好的防病毒软件的作用是( D )
A、检查计算机是否染有病毒,消除已感染的任何病毒
A、打开软盘的写保护小孔
B、用消病毒软件检查该软盘有无计算机病毒
C、检查硬盘有无计算机病毒,并关掉软盘写保护小孔
D、关闭软盘的写保护小孔
24、静态RAM的特点是( A )
A、在不断电的条件下,其中的信息保持不变,因而不必定期刷新
B、在不断电的条件下,其中的信息不能长时间保持,因而必须定期刷新才不致丢失信息
C、其中的信息只能读不能写
D、其中的信息断电后也不会丢失
25、性能价格比也是一种用来衡量计算机产品优劣的概括性指标。性能代表系统的使用价值,它一般不包括( D )
A、计算机的运算速度
B、内存储器容量和存取周期
C、通道信息流量速率及输入输出设备的配置
D、计算机外形尺寸
26、ASCII码是一种( B )位二进制编码
B、杜绝病毒对计算机的感染
C、查出计算机已感染的任何病毒,消除其中的一部分
D、检查计算机是否染有病毒,消除已感染的部分病毒
19、办公自动化是计算机的一项应用,按计算机应用的分类,它属于( C )
A、科学计算 B、实时控制 C、数据处理 D、辅助设计
22、下列4条叙述中,正确的一条是( C )
A、字节通常用英文单词“bit”来表示
B、目前广泛使用的Pentium机,其字长为5个字节
C、计算机存储器中将8个相邻的二进制位作为一个单位,这种单位称为字节
历年广西区计算机二级考试C笔试试卷.doc
历年广西区计算机二级考试C笔试试卷作者:未知新闻来源:未知点击数:8706更新时间:2006-5-11广西区等级考试二级C真题第一卷(共70分)第一部分:基础知识(20题,共40分)1、一个C程序总是从()开始执行。
A、程序的第一条执行语句B、主函数C、子程序D、主程序2、在C语言屮,int, char和short int三种类型变量所占用的内存大小是()。
A、均为2个字节B、由用户自己定义C、由所用机器的字长决定D、是任意的3、若有以下类型说明语句:char a; int b; float c; short int d;则表达式(c*b+a) *d的结果类型是()。
A、charB、intC、doubleD、float4、若有说明语句:int w=l,x=2,y=3.z=4;则表达试w>x?w:z>y?z:x的值是()A、4B、3C、2D、15、设x,y为int型变量,则执行下列语句后,y的值是()x=5;y=x++*x++;y=--y*--y;A、529B、2401C、1209D、6256、C语言中函数返回值的类型是()A、return语句中的表达式类型B、调用函数的类型C、总是int型D、定义函数时所指定的函数类型7、凡是在函数中未指定存储类别的变量,其隐含的存储类别是()A、自动B、静态C、外部D、寄存器8、在源程序的一个文件中定义的全局变量的作用域是()A、本文件的全部范围B、该程序的全部范围C、一个函数的范围D、从定义该变量的位置开始至该文件的结束9、以下不止确的描述是()A、break语句只能用于循环语句和switch语句B、在switch语句中,break语句的作用也可H] continue语句来替代C、在循环语句中,使用continue语句是为了结束本次循环,而不是终止循环的执行D、在循环语句中,使用break语句是为了使流程跳出循环体,提前结束循环10、若有宏定义#define mod(x.y) x%y则执行以下程序段后,输出为()int z,a=15,b=100;z=mod(b,a);printf("% d\n",z++);A、11B、10C、6D、宏定义不合法11、若有说明语句:char si[4]=” 12”; char *ptr;则执行下列语句后输出为()ptr=sl;printf(“%c\n",*(ptT+l));A、字符2B、整数2C、字符串“12”D、字符T12、若有以下语句int x[]={2,4,6,8,10,12},*ptr;ptr=x;则对数组元素的正确引用为()A> x B、x[6] C、* (—ptr) D、*(4~+ptr)13、若有说明语句:inti,x[3][4];WJ不能实现将x[l][l]的值赋给变量i的语句是()A、i=*(*(x+l)+l)B、i=*(*(x+l))C、i=x[l][l]D、i=*(x[l]+l)14、若已定义了如下的共用体类型变量x,则x所占用的字节数(在16位PC机条件下)为( union data{inti;char ch;double f;}x;A、7B、11C、8D、1015、如下说明语句:enum A {A0= 1,A 1=3,A2,A3,A4,A5};enum A B;执行:B=A3;printf(“%d\n”,B);输出的是()A、5B、3C、2D、编译时出错16、while(!x)屮的条件表达式(!x)与下面条件()等价。
历年广西区计算机二级考试c笔试试卷
历年广西区计算机二级考试C笔试试卷广西区计算机等级二级C试题选择题(50)1、c语言规定:在一个源程序中,main函数的位置AA)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后2、下面程序的运行结果是______。
main(){struct cmplx {int x;int y;}cnum[2]={1,3,2,7};printf(”%d\n”,cnum[0].y/cnum[0].x *cnum[l].x);}A)0 B)1 C)3 D)63、表达式18/4*2/8值的数据类型为_A____A)int B)float C)double D)不确定4、以下不正确的叙述是D 。
A)在c程序中,逗号运算符的优先级最低B)在C程序中,APH和aph是两个不同的变量c)若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中,而b中的值不变。
D)当从键盘输入数据时,对于整型变量只能输入整型数值.对于实型变量只能输入实型数值。
5、以下程序的运行结果是______。
#include "stdio.h”main(){struct date{int year,month,day;}today;printf(“%d\n”,sizeof(struct date));}A)6 B)8 C)10 D)126、以下说法正确的是。
A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d”);C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf (“%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scanf(“%f",&f);7、己知各变量的类型说明如下:int i=8,k,a,b;unsigned long w=55;double x=1.42,y=5.2;则以下符合c语言语法的表达式是_____。
全国计算机等级考试二级C语言程序设计真题精选3(含答案)
全国计算机等级考试二级C语言程序设计真题精选3一、单项选择题1.下列关于C语言文件的叙述中正确的是()。
A.文件由一系列数据依次排列组成,只能构成二进制文件B.文件由结构序列组成,可以构成二进制文件或文本文件C.文件由数据序列组成,可以构成二进制文件或文本文件√D.文件由字符序列组成,其类型只能是文本文件解析:C语言将文件看作是一个字符(字节)的序列,即由一个一个字符(字节)数据顺序组成。
根据数据的组成形式,可将文件分为两种:①ASCII文件,又称文本(text)文件,它的每一个字节可放一个ASCII码,代表一个字符;②二进制文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。
所以C文件就是一个字节流或一个二进制流。
2.有以下程序:#includ<stdio.h>main()inm=1,n=2,*p=&m,*q=&n,*r; r=p,p=q;q=r; printf("%d,%d,%d,%",m,n,*p,*q);}程序运行后的输出结果是()。
A.1,2,1,2B.1,2.2,1 √C.2,1,2,1D.2,1.1,2解析:本题定义了两个整型变量,然后用两个指针分别指向这两个整型变量,接着对指针进行交换,那么原来指向第一个整数的指针将指向第二个整数,原来指向第二个整数的指针将指向第一个整数。
3.有以下程序:#includ<stdio.h>#include<string.h>strucAina;chab[10];doublc;};strucf (struct);main()struca={1001,"ZhangDa",1098.0}; a=f(a);printf ("%d,%s,%6.1",a.a,a.b,a.c);}strucf(struct)t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;returt;}程序运行后的输出结果是()。
广西区二级C语言考试题
全国高校计算机联合考试(广西考区)二级C语言试题卷2011年12月24日闭卷考试考试时间:120分钟第一卷本卷共70分,其中第1~26题每题2分,第27~32题每题3分。
1.main()函数的特征是。
A.可独立运行的函数B. 必不可少的函数C. 最先执行的函数D. 具有前述三种特征的函数2.下面标识符中,不合法的C语言标识符是。
A. _charB. CharC. a#bD. a1b3.下面常量中,非法的C语言常量是。
A.’tt’ B. 10L C.0.01 D.0x104.设int 类型的数据长度为2个字节,则unsigned int 类型数据的取值范围是。
A . -32768~32767 B. 0~255 C. 0~65535 D. -256~2565.若w、x、y均为int型变量,则执行下列语句后,y的值是。
w=5;x=w++;y=x+w--;A. 9B. 11C. 10D. 126.若之前有以下说明语句,则表达式c*x+z+y的结果类型是。
char c; int x;float y,z;A. doubleB. intC. charD. float7.若y为int型变量,则执行以下语句后,y的值是。
y=8;y+=y-=y*y;A.64 B. -56 C. -112 D. -488. 若m、a、b、c、d均为int型变量,则执行下列语句后m的值是。
a=1;b=2;c=3;d=4;m=a>b?a:c<d?c:d;A.1 B.4 C.2 D.39.若a、b为int型变量,则执行下列语句后b的值。
a=15;b=15;do{ b-=a;a++;}while(b--< 0);A.0 B.-15 C.-16 D. -110. 若有以下语句,则下面选项是正确的描述。
static char x[]="china";static char y[]={'c','h','i','n','a'};A. x数组与y数组长度相同B. x数组长度大于y数组的长度C. x数组长度小于y数组的长度D. x数组和y数组的赋值是非法的11.while(!x)中的条件表达式(!x)与下面条件等价。
3月计算机等级考试二级C语言笔试真题及参考答案
2010年3月计算机等级考试二级C语言笔试真题一、选择题(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏清况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)(2)算法的时问复杂度是指A)算法的执行时间B)算法所处理的数据量C)算法程序中的语司或指令条数D)算法在执行过程中所需要的基本运算次数(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是A)编辑软件B)操作系统C)教务管理系统D)浏览器(4)软件(程序)调试的任务是A)诊断和改正程序中的错误B)尽可能多地发现程序中的错误C)发现并改正程序中的所有错误D)确定程序中错误的性质(5)数据流程图(DFD图)是A)软件概要设计的工具B)软件详细设计的工具C)结构化方法的需求分析工具D)面向对象方法的需求分析工具(6)软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于A)定义阶段B)开发阶段C)维护阶段D)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计一阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:则由关系K得到关系T的操作是A)选择B)投影C)交D)并(11)以下叙述正确的是A)C语言程序是由过程和函数组成的B)C语言函数可以嵌套调用,例如:fun(fun(x))C)C语言函数不可以单独编译D)C语言中除了main函数,其他函数不可作为单独文件形式存在(12)以下关于C语言的叙述中正确的是A)C语言中的注释不可以夹在变量名或关键字的中间B)C语言中的变量可以在使用之前的任何位置进行定义C)在C语言算术表达式的书写中,运算符两侧的运算数类型必须一致D)C语言的数值常量中夹带空格不影响常量值的正确表示(13)以下C语言用户标识符中,不合法的是A)_1B)AaBcC)a_bD)a—b(14)若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#includemain(){ char a,b,c,d;scanf(“%c%c”,&a,&b);c=getchar(); d=getchar();printf(“%c%c%c%cn”,a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,代表回车,注意:回车也是一个字符)1234则输出结果是A)1234B)12C)123D)1234(16)以i关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应本资.料来源于贵-州-学-习-网使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b; else a++;语句功能不同的switch语句是A)switch(a){case:a=b;break;default:a++;}B)switch(a==1){case 0:a=b;break;case 1:a++;}C)switch(a){default:a++;break;case 1:a=b;}D)switch(a==1){case 1:a=b;break;case 0:a++;}(19)有如下嵌套的if语句if (aif(aelse k=c;elseif(belse k=c;以下选项中与上述if语句等价的语句是A)k=(aB)k=(aC)k=(aD)k=(a(20)有以下程序#includemain(){in i,j,m=1;for(i=1;i<3;i++){for(j=3;j>O;j--){if(i*j)>3)break;m=i*j;}}printf("m=%dn",m);}程序运行后的输出结果是A)m=6B)m=2C)m=4D)m=5(21)有以下程序#include(stdio.h>main(){int a=l;b=2;for(;a<8;a++) {b+=a;a+=2;}printf("%d,%dn",a,b);}程序运行后的输出结果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值为八进制数#includemain(){int k=011;printf("%dn",k++);}程序运行后的输出结果是A)12B)11C)10D)9(23)下列语句组中,正确的是A)char *s;s="Olympic";B)char s[7];s="Olympic";C)char *s;s={"Olympic"};D)char s[7];s={"Olympic"};(24)以下关于return语句的叙述中正确的是A)一个自定义函数中必须有本文来源于贵州学习网WWW.GZU521.COM一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返回到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008;int num[N];D)#define N 2008int num[N];(26)有以下程序#includevoid fun(char *c,int d){*c=*c+1;d=d+1;printf("%c,%c,",*c,d);main(){char b='a',a='A';fun(&b,a);printf("%e,%en",b,a);}程序运行后的输出结果是A)b,B,b,AB)b,B,B,AC)a,B,B,aD)a,B,a,B(27)若有定义int(*Pt)[3];,则下列说法正确的是A)定义了基类型为int的三个指针变量B)定义了基类型为int的具有三个元素的指针数组ptC)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元素a[3]的是A)(*s)[3]B)*(s+3)C)*s[3]D)*s+3(29)有以下程序#include(stdio.h)main(){int a[5]={1,2,3,4,5},b[5]={O,2,1,3,0},i,s=0;for(i=0;i<5;i++) s=s+a[b[i]]);printf("%dn", s);}程序运行后的输出结果是A)6B)10C)11D)15(30)有以下程序#includemain(){int b [3][3]={O,1,2,0,1,2,O,1,2},i,j,t=1;for(i=0;i<3;i++)for(j=ij<=1;j++) t+=b[i][b[j][i]];printf("%dn",t);}程序运行后的输出结果是A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",*s2="n123\";printf("%d %dn", strlen(s1),strlen(s2));则输出结果是A)5 5B)10 5C)10 7D)5 8(32)有以下程序#include#define N 8void fun(int *x,int i){*x=*(x+i);}main(){int a[N]={1,2,3,4,5,6,7,8},i;fun(a,2);for(i=O;i{printf("%d",a[i]);}printf("n");}程序运行后的输出结果是A)1313B)2234C)3234D)1234(33)有以下程序#includeint f(int t[],int n);main{ int a[4]={1,2,3,4},s;s=f(a,4); printf("%dn",s);}int f(int t[],int n){ if(n>0) return t[n-1]+f(t,n-1);else return 0;}程序运行后的输出结果是A)4B)1OC)14D)6(34)有以下程此资料转贴于贵州学习网序#includeint fun(){ static int x=1;x*2; return x;}main(){int i,s=1,for(i=1;i<=2;i++) s=fun();printf("%dn",s);}程序运行后的输出结果是A)OB)1C)4D)8(35)有以下程序#include#define SUB(a) (a)-(a)main(){ int a=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%dn",d);}程序运行后的输出结果是A)0B)-12C)-20D)10(36)设有定义:struct complex{ int real,unreal;} data1={1,8},data2;则以下赋值语句中错误的是A)data2=data1;B)data2=(2,6);C)data2.real=data1.real;D)data2.real=data1.unreal;(37)有以下程序#include#includestruct A{ int a; char b[10]; double c;};void f(struct A t);main(){ struct A a={1001,"ZhangDa",1098.0};f(a); printf("%d,%s,%6.1fn",a.a,a.b,a.c);}void f(struct A t){ t.a=1002; strcpy(t.b,"ChangRong");t.c=1202.0;} 程序运行后的输出结果是(38)有以下定义和语句struct workers{ int num;char name[20];char c;struct{int day; int month; int year;}s;};struct workers w,*pw;pw=&w;能给w中year成员赋1980的语句是A)*pw.year=198O;B)w.year=1980;C)pw->year=1980;D)w.s.year=1980;(39)有以下程序#includemain(){ int a=2,b=2,c=2;printf("%dn",a/b&c);}程序运行后的输出结果是A)OB)1C)2D)3(40)有以下程序#includemain(){ FILE *fp;char str[10];fp=fopen("myfile.dat","w");fputs("abc",fp);fclose(fp);fpfopen("myfile.data","a++");fprintf(fp,"%d",28);rewind(fp);fscanf(fp,"%s",str); puts(str);fclose(fp);}程序运行后的输出结果是A)abcB) 28cC) abc28D)因类型不一致而出错二、填空题(1)一个队列的初始状态为空。
全国计算机等级考试二级C历年真题及答案
全国计算机等级考试二级C历年真题及答案一、选择题((1)~(35)每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下面叙述正确的是A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是A)队列B)线性表C)二叉树D)栈(3)在一棵二叉树上第5层的结点数最多是A)8B)16C)32D)15(4)下面描述中,符合结构化程序设计风格的是A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B)模块只有一个入口,可以有多个出口C)注重提高程序的执行效率D)不使用goto语句(5)下面概念中,不属于面向对象方法的是A)对象B)继承C)类D)过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是A)可行性分析B)需求分析C)详细设计D)程序编码(7)在软件开发中,下面任务不属于设计阶段的是A)数据结构设计B)给出系统模块结构C)定义模块算法D)定义需求并建立系统模型(8)数据库系统的核心是A)数据模型C)软件工具B)数据库管理系统D)数据库(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库设计是指设计数据库管理系统C)数据库技术的根本目标是要解决数据共享的问题D)数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是A)内模式B)外模式C)概念模式D)逻辑模式(11)关于面向对象的程序设计方法,下列说法正确的是A)―封装性‖指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B)―多态性‖指的是对象的状态会根据运行时要求自动变化C)基类的私有成员在派生类的对象中不可访问,也不占内存空间D)在面向对象的程序设计中,结构化程序设计方法仍有着重要作用(12)判断字符型变量ch是否为大写英文字母,应使用表达式A)ch>='A'&ch<='Z'B)ch<='A'||ch>='Z'C)'A'<=ch<='Z'D)ch>='A'&& ch<='Z'(13)已知下列语句中的某和y都是int型变量,其中错误的语句A)某=y++;B)某=++y;C)(某+y)++;D)++某=y;(14)执行语句序列intn;cin>>n;witch(n){cae1:cae2:cout<<'1';cae3:cae4:cout<<'2';break;default:cout<<'3';}时,若键盘输入1,则屏幕显示A)1B)2C)3D)12(15)下列程序的输出结果是#includeuingnamepacetd;intmain(){chara[]=\char某ptr=a;while(某ptr){if(某ptr>='a'&&某ptr<='z')cout<<char(某ptr+'A'-'a');elecout<<某ptr;ptr++;}return0;}A)HELLO,WORLDB)Hello,WorldC)hELLO,wORLDD)hello,world(16)已知:intm=10;在下列定义引用的语句中,正确的是A)int&某=m;B)inty=&m;C)int&z;D)int&t=&m;(17)下列函数原型声明中错误的是A)voidFun(int某=0,inty=0);B)voidFun(int某,inty);C)voidFun(int某,inty=0);D)voidFun(int某=0,inty);(18)已知程序中已经定义了函数tet,其原型是inttet(int,int,int);,则下列重载形式中正确的是A)chartet(int,int,int);B)doubletet(int,int,double);C)inttet( int,int,int=0);D)floattet(int,int,float=3.5F);(19)有以下程序#includeinti=0;voidfun(){{taticinti=1;td::cout<td::cout<2intmain(){fun();fun();return0;}程序执行后的输出结果是A)1,2,1,2,B)1,2,2,3,C)2,0,3,0,D)1,0,2,0,(20)已知函数f的原型是:voidf(int某a,long&b);变量v1、v2的定义是:intv1;longv2;,正确的调用语句是A)f(v1,&v2);B)f(v1,v2);C)f(&v1,v2);D)f(&v1,&v2);(21)有以下类定义claMyCla{public:MyCla(){cout<<1;}};则执行语句MyClaa,b[2],某p[2];后,程序的输出结果是A)11B)111C)1111D)11111(22)关于友元,下列说法错误的是A)如果类A是类B的友元,那么类B也是类A的友元B)如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员C)友元关系不能被继承D)如果类A是类B的友元,那么类A的所有成员函数都是类B的友元(23)关于动态存储分配,下列说法正确的是A)new和delete是C++语言中专门用于动态内存分配和释放的函数B)动态分配的内存空间也可以被初始化C)当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D)当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new(24)有以下程序#includeuingnamepacetd;claMyCla{public:MyCla(intn){number=n;}//拷贝构造函数MyCla(MyCla&other){number=other.number;}~MyCla(){}private: intnumber;};MyClafun(MyClap){3MyClatemp(p);returntemp;}intmain(){MyClaobj1(10),obj2(0);MyClaobj3(obj1);obj2=fun(obj3);return0 ;}程序执行时,MyCla类的拷贝构造函数被调用的次数是A)5B)4C)3D)2(25)在公有派生的情况下,派生类中定义的成员函数只能访问原基类的A)公有成员和私有成员B)私有成员和保护成员C)公有成员和保护成员D)私有成员、保护成员和公有成员(26)在C++中用来实现运行时多态性的是A)重载函数B)析构函数C)构造函数D)虚函数(27)一个类可以同时继承多个类,称为多继承。
全国高校计算机等级考试(广西考区)二级Access笔试样题(桂工)
全国高校计算机等级考试广西考区二级Access样卷(答卷时间120分钟)准考证号......................... 姓名.........................第一部分:基础知识(每项2分,35项,共70分)(下列各题只有一个选项是正确的,请将正确选项写在答题卡相应位置上,答在试卷上不得分。
)[基础知识]一、以下不属于Access对象的是 1 。
1. A.表B.窗体C.查询D.Windows资源管理器[基础知识]二、下述关于数据库系统的叙述中正确的是 2 。
2.A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统的最大优点是它比文件系统能管理更多的数据[基础知识]三、某数据库的表中要添加图片数据,该字段应采用的字段类型是 3 。
3. A.OLE对象数据类型B.超级连接数据类型C.查阅向导数据类型D.自动编号数据类型[基础知识]四、下图所示的数据模型属于 4 。
4. A.关系模型B.层次模型C.网状模型D.以上都不对[基础知识]五、在 Access 中,参照完整性规则 5 。
5. A.不包括级联更新相关字段B.不包括级联删除相关记录C.不能同时设置“级联更新相关字段”和“级联删除相关记录”D.可以同时设置“级联更新相关字段”和“级联删除相关记录”[基础知识]六、Access字段名的最大长度为___6___。
6.A.64个字符B.128个字符C.255个字符D.256个字符[基础知识]七、若将某“单精度”型字段修改为“整型”,以下为该字段的原有数据,字段类型修改后将会发生变化的是 7 。
7. A.0 B.1001 C.-5 D.3.14159[基础知识]八、在关系数据模型中,域是指___8___。
8. A.元组B.属性C.元组的个数D.属性的取值范围[基础知识]九、根据以下数据表所保存的实际数据,该表的关键字应该设为 9 。
2011广西壮族自治区计算机等级考试试题 二级C试题考资料
52、对建立良好的程序设计风格,下面描述正确的是(A)
A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法
C. 充分考虑程序的执行效率 D. 程序的注释可有可无
26、以下数据结构中不属于线性数据结构的是(C)
A. 队列 B. 线性表 C. 二叉树 D. 栈
27、下面对对象概念描述错误的是(A)
A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体
C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性
28、数据库设计包括两个方面的设计内容,它们是(A)
C. 数据库系统中数据的一致性是指数据类型的一致 D. 数据库系统比文件系统能管理更多的数据
35、下列关于栈的叙述中正确的是(D)
A. 在栈中只能插入数据 B. 在栈中只能删除数据
C. 栈是先进先出的线性表 D. 栈是先进后出的线性表
36、算法的时间复杂度是指(C)
A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数
9、下列叙述中正确的是(C)
A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致
10、在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)
A. 属性 B. 关系 C. 键 D. 域
13、关系表中的每一横行称为一个(A)
A. 元组 B. 字段 C. 属性 D. 码
14、数据库设计包括两个方面的设计内容,它们是(A)
广西计算机二级c
(1)在32位计算机中,一个字长所占的字节数为___C___。
A) 1 B) 2 C) 4 D) 8(2)与十进制511等值的十六进制数为___A___。
A) 1FF B) 2FF C) 1FE D) 2FE(3)能将高级语言编写的源程序转换成目标程序的是__B____。
A) 编辑程序B) 编译程序C) 解释程序D) 链接程序(4)在计算机系统中,存储一个汉字的国标码所需要的字节数为____B__。
A) 1 B) 2 C) 3 D) 4(5)下列带有通配符的文件名,能表示文件ABC.TXT的是___C___。
A) *BC.? B) A?.* C) ?BC.* D) ?.?(6)在多媒体计算机系统中,不能用以存储多媒体信息的是___A___。
A) 光缆B) 软盘C) 硬盘D) 光盘(7)DOS命令“COPY/?”的功能是__D____。
A) 将当前盘当前目录中的所有文件复制到当前盘的根目录下B) 将当前盘当前目录中所有以单个字符命名的文件复制到当前盘的根目录下C) 以提示方式复制文件D) 显示COPY命令的帮助信息(8)在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按_____D_。
A) Ctrl+PrintScreen键B) Shift+PrintScreen键C) PrintScreen键D) Alt+PrintScreen键(9)在Windows环境下,单击当前应用程序窗口的“关闭”按钮,其功能是__D____。
A) 将当前应用程序转为后台运行B) 退出Windows后再关机C) 退出Windows后重新启动计算机D) 终止当前应用程序的运行(10)在Windows环境下,粘贴快捷键是___D___。
A) Ctrl+Z B) Ctrl+X C) Ctrl+C D) Ctrl+V(11)以下叙述中正确的是____A__。
A) 构成C程序的基本单位是函数B) 可以在一个函数中定义另一个函数C) main()函数必须放在其它函数之前D) 所有被调用的函数一定要在调用之前进行定义(12)以下选项中合法的实型常数是____D__。
全国计算机等级考试《二级C语言程序设计》历年真题精选及详解
全国计算机等级考试《二级C语言程序设计》历年真题精选及详解一、选择题(请在【答题】菜单上选择【选择题】命令,启动选择题测试程序,按照题目上的内容进行答题。
作答选择题时键盘被封锁,使用键盘无效,考生须使用鼠标答题。
选择题部分只能进入一次,退出后不能再次进入。
选择题部分不单独计时。
)1.下列叙述中正确的是()。
A.所有数据结构必须有根结点B.所有数据结构必须有终端结点(即叶子结点)C.只有一个根结点,且只有一个叶子结点的数据结构一定是线性结构D.没有根结点或没有叶子结点的数据结构一定是非线性结构【答案】D【解析】D项正确,线性结构的特点是:①集合中必存在“第一个元素”且惟一;②集合中必存在“最后一个元素”且惟一;③除最后一个元素外,其他数据元素均有惟一的“后继”;④除第一个元素外,其他数据元素均有惟一的“前驱”。
所以没有根结点或没有叶子结点的数据结构一定是非线性结构。
AB两项错误,不是所有数据结构都必须有根结点和叶子结点;C项错误,数据结构中若有中间结点不满足只有一个前件或者后件的条件,就不是线性结构。
答案选择D选项。
2.以下叙述中错误的是()。
A.C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令B.C程序经过编译、链接步骤之后才能形成一个真正可执行的二进制机器指令文件C.用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中D.C语言源程序经编译后生成后缀为.obj的目标程序【答案】A【解析】A项错误,注释语句不会被翻译成二进制的机器指令。
C源程序经过C编译程序编译之后生成后缀为.obj的二进制文件(称为目标文件),然后由“链接程序”(Link)的软件把.obj文件与各种库函数连接起来生成一个后缀为.exe的可执行文件。
答案选择A选项。
3.C语言主要是借助以下()功能来实现程序模块化的。
A.定义函数B.定义常量和外部变量C.三种基本结构语句D.丰富的数据类型【答案】A【解析】C程序的模块化主要通过函数来实现。
全国计算机等级考试(二级c )历年真题及答案
全国计算机等级考试二级笔试试卷公共基础知识及C++语言程序设计(考试时间90分钟,满分100)分)一、选择题((1)~(35)每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 下面叙述正确的是A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是A)队列B)线性表C)二叉树D)栈(3)在一棵二叉树上第5层的结点数最多是A)8 B)16 C)32 D)15(4)下面描述中,符合结构化程序设计风格的是A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B)模块只有一个入口,可以有多个出口C)注重提高程序的执行效率D)不使用goto语句(5)下面概念中,不属于面向对象方法的是A)对象B)继承C)类D)过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是A)可行性分析B)需求分析C)详细设计D)程序编码(7)在软件开发中,下面任务不属于设计阶段的是A)数据结构设计B)给出系统模块结构C)定义模块算法D)定义需求并建立系统模型(8)数据库系统的核心是A)数据模型C)软件工具B)数据库管理系统D)数据库(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库设计是指设计数据库管理系统C)数据库技术的根本目标是要解决数据共享的问题D)数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是A)内模式B)外模式C)概念模式D)逻辑模式(11)关于面向对象的程序设计方法,下列说法正确的是A)“封装性”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B)“多态性”指的是对象的状态会根据运行时要求自动变化C)基类的私有成员在派生类的对象中不可访问,也不占内存空间D)在面向对象的程序设计中,结构化程序设计方法仍有着重要作用(12)判断字符型变量ch是否为大写英文字母,应使用表达式A ) ch>='A' & ch<='Z'B ) ch<='A' ||ch>='Z'C ) 'A'<=ch<='Z'D ) ch>='A' && ch<='Z'(13)已知下列语句中的x和y都是int型变量,其中错误的语句A ) x=y++;B ) x=++y;C ) (x+y)++;D ) ++x=y;(14)执行语句序列int n;cin >> n;switch(n){ case 1:case 2: cout << '1';case 3:case 4: cout << '2'; break;default: cout << '3';}时,若键盘输入1,则屏幕显示A)1 B)2 C)3 D)12(15)下列程序的输出结果是#include <iostream>using namespace std;int main(){char a[] = "Hello, World";char *ptr = a;while (*ptr){if (*ptr >= 'a' && *ptr <= 'z')cout << char(*ptr + 'A' -'a');else cout << *ptr;ptr++;}return 0;}A ) HELLO, WORLDB ) Hello, WorldC ) hELLO, wORLD D ) hello, world(16)已知:int m=10;在下列定义引用的语句中,正确的是A ) int &x=m;B )int y=&m;C )int &z;D ) int &t=&m;(17)下列函数原型声明中错误的是A ) void Fun(int x=0, int y=0);B ) void Fun(int x, int y);C ) void Fun(int x, int y=0);D ) void Fun(int x=0, int y);(18)已知程序中已经定义了函数test,其原型是int test(int, int, int);,则下列重载形式中正确的是A ) char test(int,int,int);B ) double test(int,int,double);C ) int test(int,int,int=0);D ) float test(int,int,float=3.5F);(19)有以下程序#include<iostream>int i = 0;void fun(){ {static int i = 1;std::cout<<i++<<',';}std::cout<<i<<',';}int main(){fun(); fun();return 0;}程序执行后的输出结果是A)1,2,1,2, B)1,2,2,3, C)2,0,3,0, D)1,0,2,0,(20)已知函数f的原型是:void f(int *a, long &b); 变量v1、v2的定义是:int v1;long v2;,正确的调用语句是A) f(v1, &v2); B) f(v1, v2);C) f(&v1, v2); D) f(&v1, &v2);(21)有以下类定义class MyClass{public:MyClass(){cout<<1;}};则执行语句MyClass a, b[2], *p[2];后,程序的输出结果是A)11 B)111 C)1111 D)11111(22)关于友元,下列说法错误的是A)如果类A是类B的友元,那么类B也是类A的友元B)如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员C)友元关系不能被继承D)如果类A是类B的友元,那么类A的所有成员函数都是类B的友元(23)关于动态存储分配,下列说法正确的是A)new和delete是C++语言中专门用于动态内存分配和释放的函数B)动态分配的内存空间也可以被初始化C)当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D)当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new(24)有以下程序#include<iostream>using namespace std;class MyClass{public:MyClass(int n){number = n;}//拷贝构造函数MyClass(MyClass &other){ number=other.number;}~MyClass(){}private:int number;};MyClass fun(MyClass p){MyClass temp(p);return temp;}int main(){MyClass obj1(10), obj2(0);MyClass obj3(obj1);obj2=fun(obj3);return 0;}程序执行时,MyClass类的拷贝构造函数被调用的次数是A)5 B)4 C)3 D)2(25)在公有派生的情况下,派生类中定义的成员函数只能访问原基类的A)公有成员和私有成员B)私有成员和保护成员C)公有成员和保护成员D)私有成员、保护成员和公有成员(26)在C++中用来实现运行时多态性的是A)重载函数B)析构函数C)构造函数D)虚函数(27)一个类可以同时继承多个类,称为多继承。
广西计算机二级试题及答案
广西计算机二级试题及答案一、选择题1. 下列关于计算机网络的说法,哪个是正确的?A. 计算机网络是由屏蔽电缆和交换机组成的B. 计算机网络是指将多台计算机连接起来,实现信息共享和资源共享的系统C. 计算机网络只能通过有线连接D. 计算机网络只能在局域网内工作答案:B2. 关于计算机中的数据存储方式,下列说法哪个是正确的?A. 机械硬盘属于非易失性存储器B. 内存条属于永久性存储器C. 固态硬盘(SSD)属于易失性存储器D. 光盘属于永久性存储器答案:C3. 下列关于电子邮件的说法,哪个是正确的?A. 电子邮件只能发送文字信息,不能发送附件B. 电子邮件的发送和接收需要连接互联网C. 电子邮件是一种即时通讯工具D. 电子邮件只能使用专门的邮件客户端进行发送和接收答案:B4. 在Word文档中,以下哪个选项用于将文字居中对齐?A. 左对齐B. 右对齐C. 居中对齐D. 两端对齐答案:C5. 下列关于Excel的说法,哪个是正确的?A. Excel只能用于创建文档,不能进行数据处理和分析B. Excel的工作表由行和列组成,行用数字表示,列用字母表示C. Excel只能在电脑上运行,不能在移动设备上使用D. 在Excel中,单元格只能存储文字信息,不能存储数字和公式答案:B二、填空题1. 在计算机中,CPU全称为______________。
答案:中央处理器2. 在计算机网络中,HTTP的全称为______________。
答案:超文本传输协议3. 在Windows操作系统中,Ctrl + C的快捷键的作用是______________。
答案:复制选中内容4. 在Excel中,用于求和的公式是______________。
答案:SUM5. 在HTML中,用于设置页面标题的标签是______________。
答案:\<title>三、简答题1. 请简要介绍计算机中的硬件和软件的概念及其区别。
2022年3月计算机等级考试二级C语言笔试真题及答案
年年年3333月计算机级别考试二级月计算机级别考试二级月计算机级别考试二级月计算机级别考试二级CCCC语言笔试语言笔试语言笔试语言笔试一、选择题(1)下列有关栈论述对旳旳是______.A A)栈顶元素最先能被删除 B)栈顶元素最后才干被删除C)栈底元素永远不能被删除 D)以上三种说法都不对(2)下列论述中对旳旳是______。
B A)有一种以上根结点旳数据构造不一定是非线性构造B)只有一种根结点旳数据构造不一定是线性构造C)循环链表是非线性构造 D)双向链表是非线性构造(3)某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树旳深度为(假设根结点在第1层)_____.D A)3 B)4 C)6 D)7(4)在软件开发中,需求分析阶段产生旳重要文档是_____。
D A)软件集成测试筹划 B)软件具体设计阐明书C)顾客手册 D)软件需求规格阐明书(5)构造化程序所规定旳基本构造不涉及______。
B A)顺序构造 B)GOTO跳转C)选择(分支)构造 D)反复(循环)构造(6)下面描述中错误旳是______。
A A)系统总体构造图(概要设计)支持软件系统旳具体设计(图)B)软件设计是将软件需求转换为软件表达旳过程C)数据构造与数据库设计是软件设计旳任务之一什么设计相应什么图?D)PAD图是软件具体设计旳表达工具(7)负责数据库中查询操作旳数据库语言是______.C A)数据定义语言 B)数据管理语言ddl C)数据操纵语言dml D)数据控制语言dcl(8)一种教师可讲授多门课程,一门课程可由多种教师讲授.则实体教师和课程间旳联系是__D____。
A)1:1联系 B)1:m联系 C)m:1联系 D)m:n联系(9)有三个关系R、S和T如下:C则由关系R和S得到关系T旳操作是________.A)自然连接 B)交 C)除 D)并(10)定义无符号整数类为UInt,下面可以作为类UInt实例化值旳是_____。
计算机二级 C语言 历年真题2002-2007 (3)
(10) 目前,计算机病毒扩散最快的途径是( )。
A) 通过软件复制
B) 通过网络传播
C) 通过磁盘考贝
D) 运行游戏软件
(11) 以下叙述中正确的是( )。
A) C语言比其他语言高级
B) C语言可以不用编译就能被计算机识别执行
c='\0xab'; d="\017";
print("%c%c%c\n",a,b,c,*d);
}
编译时出现错误,以下叙述中正确的是( )。
A) 程序中只有a='\';语句不正确
B) b='\xbc';语句不正确
C) d="\0127";语句不正确
D) a='\';和c='\0xab';语句都不正确
A) 在Windows环境下,最大化的窗口是不能移动的
B) 在Windows环境下,应用程序窗口最小化后,该应用程序暂停执行
C) 在Windows环境下,只有最小化的窗口才能关闭
D) 在Windows环境下,不能关闭最大化的窗口
(8) 在Windows环境下,工具栏中的复制按钮是( )。
B) C语言中没有逻辑类型但有集合类型
C) C语言中有逻辑类型但没有集合类型
D) C语言中既没有逻辑类型也没有集合类型
(15) 下列关于C语言用户标识符的叙述中正确的是
A)用户标识符中可以出现在下划线和中划线(减号)
B)用户标识符中不可以出现中划线,但可以出现下划线
C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头
全国联考计算机二级广西区C语言真题2006年6月
全国联考计算机二级广西区C语言真题2006年6月全国高校计算机等级考试(广西考区)二级C语言试题卷2006年6月24日闭卷考试考试时间:120分钟考试类别〖8〗考生注意:①本试卷包括第一卷和第二卷,考试时间共120分钟.②第一卷全部为选择题,每题下都有四个备选答案,但只有一个是正确的或是最佳的答案. 第一卷答案必须填涂在标准化答题卡上,标记在试题卷上的答案一律无效.每题只能填涂一个答案,多涂本题无效.考生答第一卷的题目时务必使用2B铅笔按正确的填涂方法在答题卡上相应题号的方格涂黑,如果改动答案,可用橡皮擦干净后再另涂新的答案.③第二卷均为填空题,在阅读和理解力原题程序的基础上,在第二卷答案卡上相应的空栏处填入适当的字符,语句.考生答第二卷的题目时,要用钢笔或圆珠笔书写,用铅笔答题无效.在试题卷上直接答题无效.④请考生在标准答题卡和第二卷答题卡上准确填涂或填写准考证号码.⑤请考生遵照上述要求,否则将会影响正确成绩.第一卷本卷共70分,其中第1~26题每题2分,第27~32题每题3分。
第一部分:基础知识1. 一个C语言程序是从开始执行的。
A.程序中的第一个语句B.包括文件(头文件)的第一个函数C.名为main的函数D.程序中的第一个函数2 . 以下程序:main(){ int a=2,b=4 ,c=7,x;x=a|b&c;printf(“%d”,x);}执行后输出结果是A.0 B.1 C.5 D.63. 有以下程序:main(){ int x=15,y=4;printf(”%d,%d\n”,x--,++y);执行之后输出的结果是A.14,5B.15,5 C15,4 D14,744.以下程序的输出结果是。
Main(){int x=6,y=10;x+=y;y+=xprintf(”%d,%d\n”,x,y);供选择答案是:A.16 26B.6 10C.16 16D.10 65.在说明语句:int(*f)[5];中,标识符f代表的是____ _.A.一个用于指向整型数据的指针变量B.一个用于指向一维数组的指针变量C.一个用于指向函数的指针变量D.一个返回值为指针型的函数名6.以下程序main(){ int x1=3,x2=0,x3=0;if(x1=x2+x3) printf(“****”);else printf(“####”)}执行后输出的结果是_____A.****B.存在语法错误C.####D.无输出结果7.下列语句中正确的是____A. int s_1[]=”012345”;B.char s[3]={…1?,?2?,?3?,?4?};C.char *string=”hello!”;D.char ch=”how are you?”;8.下叙述正确的是____A.全局变量的作用域一定比局部变量的作用域范围大B.静态(static)类型变量生存期贯穿于整个程序的运行期间C.函数的形参都属于全局变量D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值9.以下正确的实型常量是____.A. 2B. 3.12e0.8C. e8D. 5.6E-210.对于下面的for循环语句,可以断定它____.for (x=0,y=0;(y!=67)&&(x<5); x++)printf(“--------”);供选择答案是:A.是无限循环(死循环)B.循环次数不定C.共执行5次循环D.共执行4次循环11.下列关于C语言数据文件的叙述中正确的是_____.A.文件由记录序列组成,可按数据的存放形式分为二进制文件和文本文件B.文件由字符序列组成,可按数据的存放形式分为二进制文件和文本文件C.文件由ASCII码字符序列组成,C语言只能读写文本文件D.文件由二进制数据序列组成,C语言只能读写二进制文件12.在C语言中,变量的缺省存储类型是____A.externB.regiterC.staticD.auto13.对于C语言程序中的函数,下列叙述中正确的是A.函数的定义不能嵌套,但函数调用可以嵌套;B. 函数的定义可嵌套,但函数调用不能嵌套;C. 函数的定义和函数调用均不能嵌套;D. 函数的定义和调用均可以嵌套。
历年全国计算机等级考试二级C语言笔试选择真题及答案
⼀、下列各题A、B、C、D四个选项中,只有⼀个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是A.栈是“先进先出”的线性表B.队列是“先进先出”的线性表C.循环队列是⾮线性结构D.有序性表既可以采⽤顺序存储结构,也可以采⽤链式存储结构(2)⽀持⼦程序调⽤的数据结构是A.栈B.树C.队列D.⼆叉树(3)某⼆叉树有5个度为2的结点,则该⼆叉树中的叶⼦结点数是A.10B.8C.6D.4(4)下列排序⽅法中,最坏情况下⽐较次数最少的是A.冒泡排序B.简单选择排序C.直接插⼊排序D.堆排序(5)软件按功能可以分为:应⽤软件、系统软件和⽀撑软件(或⼯具软件)。
下⾯属于应⽤软件的是A.编译软件B.操作系统C.教务管理系统D.汇编程序(6)下⾯叙述中错误的是A.软件测试的⽬的是发现错误并改正错误B.对被调试的程序进⾏“错误定位”是程序调试的必要步骤C.程序调试通常也称为DebugD.软件测试应严格执⾏测试计划,排除测试的随意性(7)耦合性和内聚性是对模块独⽴性度量的两个标准。
下列叙述中正确的是A.提⾼耦合性降低内聚性有利于提⾼模块的独⽴性B.降低耦合性提⾼内聚性有利于提⾼模块的独⽴性C.耦合性是指⼀个模块内部各个元素间彼此结合的紧密程度D.内聚性是指模块间互相连接的紧密程度(8)数据库应⽤系统中的核⼼问题是A.数据库设计B.数据库系统设计C.数据库维护D.数据库管理员培训(9)有两个关系R,S如下:RABCa32b01c21SABa3b0c2由关系R通过运算得到关系S,则所使⽤的运算为A.选择B.投影C.插⼊D.连接(10)将E-R图转换为关系模式时,实体和联系都可以表⽰为A.属性B.键C.关系D.域(11)以下选项中合法的标识符是A.1-1B.1—1C.-11D.1--(12)若函数中有定义语句:int k;,则A.系统将⾃动给k赋初值0B.这时k中值⽆定义C.系统将⾃动给k赋初值-1D.这时k中⽆任何值(13)以下选项中,能⽤作数据常量的是A.0115B.0118C.1.5e1.5D.115L(14)设有定义:int x=2;,以下表达式中,值不为6的是A.x*=x+1B.x++,2*xC.x*=(1+x)D.2*x,x+=2(15)程序段:int x=12;double y=3.141593; printf(“%d%8.6f”,x,y);的输出结果是A.123.141593B.123.141593C.12,3.141593D.123.141593(16)若有定义语句:double x,y,*px,*py,执⾏了px=&x, py=&y;之后,正确的输⼊语句是A.scanf(“%f%f”,x,y);B.scanf(“%f%f”,&x,&y);C.scanf(“%lf%le”,px,py);D.scanf(“%lf%lf”,x,y);(17)以下是if语句的基本形式:if(表达式)语句其中“表达式”A.必须是逻辑表达式B.必须是关系表达式C.必须是逻辑表达式或关系表达式D.可以是任意合法的表达式(18)有以下程序#includemain(){int x;scanf(“%d”,&x);if(x<=3); elseif(x!=10)printf(“%d\n”,x);}程序运⾏时,输⼊的值在哪个范围才会有输出结果A.不等于10的整数B.⼤于3且不等于10的整数C.⼤于3或等于10的整数D.⼩于3的整数(19)有以下程序#includeMain(){int a=1,b=2,c=3,d=0;if(a= =1 &&b++= =2)if(b!=2 || c--!=3)printf(“%d,%d,%d\n”,a,b,C.;else printf(“%d,%d,%d\n”,a,b,C.;else printf(“%d,%d,%d\n”,a,b,C.;}程序运⾏后的输出结果是A.1,2,3B.1,3,2C.1,3,3D.3,2,1(20)以下程序中的变量已正确定义for(i=0;i<4;i++,i++for(k=1;k<3;k++);printf(*”);程序段的输出结果是A.********B.****C.**D.*(21)有以下程序#includemain(){char*s=(“ABC.;do{printf(“%d”,*s%10);s++;}while(*s);}注意,字母A的ASCII码值为65。
全国计算机等级考试二级c历年真题及答案
全国计算机等级考试二级笔试试卷公共基础知识及C++语言程序设计考试时间90分钟,满分100分一、选择题1~35每小题2分,共70分下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分;1 下面叙述正确的是A算法的执行效率与数据的存储结构无关B算法的空间复杂度是指算法程序中指令或语句的条数C算法的有穷性是指算法必须能在执行有限个步骤之后终止D以上三种描述都不对2以下数据结构中不属于线性数据结构的是A队列 B线性表 C二叉树 D栈3在一棵二叉树上第5层的结点数最多是A8 B16 C32 D154下面描述中,符合结构化程序设计风格的是A使用顺序、选择和重复循环三种基本控制结构表示程序的控制逻辑B模块只有一个入口,可以有多个出口C注重提高程序的执行效率D不使用goto语句5下面概念中,不属于面向对象方法的是A对象 B继承 C类 D过程调用6在结构化方法中,用数据流程图DFD作为描述工具的软件开发阶段是A可行性分析 B需求分析 C详细设计 D程序编码7在软件开发中,下面任务不属于设计阶段的是A数据结构设计 B给出系统模块结构C定义模块算法 D定义需求并建立系统模型8数据库系统的核心是A数据模型 C软件工具B数据库管理系统 D数据库9下列叙述中正确的是A数据库系统是一个独立的系统,不需要操作系统的支持B数据库设计是指设计数据库管理系统C数据库技术的根本目标是要解决数据共享的问题D数据库系统中,数据的物理结构必须与逻辑结构一致10下列模式中,能够给出数据库物理存储结构与物理存取方法的是A内模式 B外模式 C概念模式 D逻辑模式11关于面向对象的程序设计方法,下列说法正确的是A“封装性”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B“多态性”指的是对象的状态会根据运行时要求自动变化C基类的私有成员在派生类的对象中不可访问,也不占内存空间D在面向对象的程序设计中,结构化程序设计方法仍有着重要作用12判断字符型变量ch是否为大写英文字母,应使用表达式A ch>='A' & ch<='Z'B ch<='A' ||ch>='Z'C 'A'<=ch<='Z'D ch>='A' && ch<='Z' 13已知下列语句中的x和y都是int型变量,其中错误的语句A x=y++;B x=++y;C x+y++;D ++x=y;14执行语句序列int n;cin >> n;switchn{ case 1:case 2: cout << '1';case 3:case 4: cout << '2'; break;default: cout << '3';}时,若键盘输入1,则屏幕显示A1 B2 C3 D1215下列程序的输出结果是include <iostream>using namespace std;int main{char a = "Hello, World";char ptr = a;while ptr{if ptr >= 'a' && ptr <= 'z'cout << charptr + 'A' -'a';else cout << ptr;ptr++;}return 0;}A HELLO, WORLDB Hello, WorldC hELLO, wORLD D hello, world16已知:int m=10;在下列定义引用的语句中,正确的是A int &x=m;B int y=&m;C int &z;D int &t=&m;17下列函数原型声明中错误的是A void Funint x=0, int y=0;B void Funint x, int y;C void Funint x, int y=0;D void Funint x=0, int y;18已知程序中已经定义了函数test,其原型是int testint, int, int;,则下列重载形式中正确的是A char testint,int,int;B double testint,int,double;C int testint,int,int=0;D float testint,int,float=3.5F;19有以下程序include<iostream>int i = 0;void fun{ {static int i = 1;std::cout<<i++<<',';}std::cout<<i<<',';}int main{fun; fun;return 0;}程序执行后的输出结果是A1,2,1,2, B1,2,2,3, C2,0,3,0, D1,0,2,0,20已知函数f的原型是:void fint a, long &b; 变量v1、v2的定义是:int v1;long v2;,正确的调用语句是A fv1, &v2; B fv1, v2;C f&v1, v2;D f&v1, &v2;21有以下类定义class MyClass{public:MyClass{cout<<1;}};则执行语句MyClass a, b2, p2;后,程序的输出结果是A11 B111 C1111 D1111122关于友元,下列说法错误的是A如果类A是类B的友元,那么类B也是类A的友元B如果函数fun被说明为类A的友元,那么在fun中可以访问类A的私有成员C友元关系不能被继承D如果类A是类B的友元,那么类A的所有成员函数都是类B的友元23关于动态存储分配,下列说法正确的是Anew和delete是C++语言中专门用于动态内存分配和释放的函数B动态分配的内存空间也可以被初始化C当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new24有以下程序include<iostream>using namespace std;class MyClass{public:MyClassint n{number = n;}//拷贝构造函数MyClassMyClass &other{ number=other.number;}~MyClass{}private:int number;};MyClass funMyClass p{MyClass tempp;return temp;}int main{MyClass obj110, obj20;MyClass obj3obj1;obj2=funobj3;return 0;}程序执行时,MyClass类的拷贝构造函数被调用的次数是A5 B4 C3 D225在公有派生的情况下,派生类中定义的成员函数只能访问原基类的A公有成员和私有成员 B私有成员和保护成员C公有成员和保护成员 D私有成员、保护成员和公有成员26在C++中用来实现运行时多态性的是A重载函数 B析构函数C构造函数 D虚函数27一个类可以同时继承多个类,称为多继承;下列关于多继承和虚基类的表述中,错误的是A每个派生类的构造函数都要为虚基类构造函数提供实参B多继承时有可能出现对基类成员访问的二义性问题C使用虚基类可以解决二义性问题并实现运行时的多态性D建立最派生类对象时,虚基类的构造函数会首先被调用28在一个类体的下列声明中,正确的纯虚函数声明是A virtual void vf=0;B void vfint=0;C virtual int vfint;D virtual void vfint { }29在下面的运算符重载函数的原型中,错误的是A Volume operator - double, double;B double Volume::operator- double;C Volume Volume: :operator - Volume;D Volume operator - Volume, Volume;30下列是模板声明的开始部分,其中正确的是A template<T>B template<class T1,T2>C template<class T1, class T2>D template<class T1;class T2>31执行语句序列ofstream outfile"DATA.DAT";if... cout << "OK"; else cout << "FAIL";后,如果文件打开成功显示“OK”,否则就显示“F厶n;”;由此可知,上面if语句的...处的表达式应是A outfile.fail 或 outfileB outfile.good 或outfileC outfile.good 或outfileD outfile.fail 或outfile32C++流中重载的运算符>>是一个A用于输出操作的非成员函数 B用于输入操作的非成员函数C用于输出操作的成员函数 D用于输入操作的成员函数33有以下类定义class Point {public:Pointint x = 0, int y = 0 { _.x = x; _.y = y; } void Moveint xOff, int yOff{ _x += xOff; _.y += yOff; }void Print const{ cout << '' << _x << ',' << _y << '' << endl; } private:int _x, _y;};下列语句中会发生编译错误的是A Point pt; pt.Print;B const Point pt; pt.Print;C Point pt; pt.Movel, 2;D const Point pt; pt.Movel, 2; 34有以下类定义class MyClass{private:int id;char gender,char phone;public:MyClass:id0,gender'',phoneNULL { }MyClassint no, char ge='', char ph= NULl. { id=no;gende=ge;phone=ph; }};下列类对象定义语句中错误的是A MyClass myObj;BMyClassmyObj11,"133****1155";C MyClass myObj12, 'm';D MyClass myObj12;35有以下程序include <iostream>using namespace std;class Complex{public:Complexdouble r =0, double i =0:rer, imi { } double real const { return re; }double imag const { return im;}Complex operator +Complex c const{ return Complexre+c.re, im+c.im; } private:double re, im;};int main{Complex a = Complexl, 1 + Complex5;cout << a.real << '+' << a.imag <<'i' << endl; return 0;}程序执行后的输出结果是A 6+6iB 6+1iC 1+6iD 1+1i二、填空题每空2分,共30分请将每一个空的正确答案写在答题卡1-15序号的横线上,答在试卷上不得分;注意:以命令关键字填空的必须拼写完整;1算法的复杂度主要包括 1 复杂度和空间复杂度;2数据的逻辑结构在计算机存储空间中的存放形式称为数据的 2 ;3若按功能划分,软件测试的方法通常分为白盒测试方法和 3 测试方法;4如果一个工人可管理多个设备,而一个设备只被一个工人管理,则实体“工人”与实体“设备”之间存在4 的联系;5关系数据库管理系统能实现的专门关系运算包括选择、连接和 5 ;6设有定义语句:int a=12;,则表达式a=2+3的运算结果是 6 ;7从实现的角度划分,C++所支持的两种多态性分别是7 时的多态性和运行时的多态性;8将—个函数声明为一个类的友元函数必须使用关键字8 ;9请按下面注释的提示,将类B的构造函数定义补充完整;class A{int a;public:Aint aa=0 { a=aa; }};class B: public A {int b;A c;public://用aa初始化基类A,用aa+1初始化类对象成员c Bint aa: 9 { b=aa+2; }};10下列程序的输出结果是 10 ;include <iostream>using namespace std;int main{int i = 5;int &r = i; r = 7;cout << i << endl;return 0;}11下列程序的输出结果是 11 ;include <iostream>using namespace std;class Test {public:Test { cnt++; }~Test {cnt--; }static int Count { return cnt;}private:static int cnt;};int Test::cnt = 0;int main{ cout << Test::Count0 <<' ';Test tl, t2;Test pT3 = new Test;Test pT4 = new Test;cout << Test::Count0 <<' ';delete pT4;delete pT3;cout << Test::Count << endl;return 0;}12下面是用来计算n的阶乘的递归函数,请将该函数的定义补充完整;注:阶乘的定义是n=nn-1 (21)unsigned factunsigned n{if n<= 1return 1;return 12 ;}13下列程序的输出结果是 13 ;include <iostream>using namespace std;template<tytename T>T funT a, T b { return a<=b :b;}int main{cout << fun3, 6 << ',' << fun 3.14F, 6.28F << endl;return 0;}14与成员访问表达式p->name等价的表达式是 14 ; 15下列程序的输出结果是 15 ;include <iostream>using namespace std;class base {public:int n;baseint x { n = x;}virtual void setint m { n = m; cout << n <<' ';}};class deriveA:public base {public:deriveAint x:basex { }void setmt m { n += m; cout << n <<' ';} };class deriveB:public basepublic:deriveBint x:basex { }void setint m { n +=m; cout <<n << ' ';}};int main{deriveA dl1;deriveB d23;base pbase;pbase = &dl;pbase->aet1;pbase = &d2;pbase->set2;return 0;}2004年9月全国计算机等级考试二级笔试试卷公共基础知识及C++语言程序设计答案及评分标准选择题1—35每小题2分,共70分1 C2 C3 B4 A5 D6 B7 D8 B9 C 10A11D 12D 13C 14D 15A16A 17D 18B 19D 20C21B 22A 23B 24B 25C26D 27C 28A 29A 30C31C 32B 33D 34B 35B二、填空题每空2分,共30分11 时间22 存储结构或物理结构或物理存储结构33 黑盒或黑箱44 一对多或 1对多或 I:M 或 I:N其中M、N大小写均可55 投影66 6077 编译88 friend99 Aaa,caa+1 或 caa+1,Aaa1010 71111 0421212 nfactn-11313 3,3.141414 1515 252010年3月计算机等级考试二级C++笔试试题一、选择题每小题2分,共70分下列各题A、B、C、D四个选项中,只有一个选项是正确的;请将正确选项填涂在答题卡相应位置上,答在试卷上不得分;1下列叙述中正确的是A对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为n/2C对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为log2nD对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为n log2n2算法的时间复杂度是指A算法的执行时间B算法所处理的数据量C算法程序中的语句或指令条数D算法在执行过程中所需要的基本运算次数3软件按功能可以分为:应用软件、系统软件和支撑软件或工具软件;下面属于系统软件的是A编辑软件B操作系统C教务管理系统D浏览器4软件程序调试的任务是A诊断和改正程序中的错误B尽可能多地发现程序中的错误C发现并改正程序中的所有错误D确定程序中错误的性质5数据流程图DFD图是A软件概要设计的工具B软件详细设计的工具C结构化方法的需求分析工具D面向对象方法的需求分析工具6软件生命周期可分为定义阶段,开发阶段和维护阶段;详细设计属于A定义阶段B开发阶段C维护阶段D上述三个阶段7数据库管理系统中负责数据模式定义的语言是A数据定义语言B数据管理语言C数据操纵语言D数据控制语言8在学生管理的关系数据库中,存取一个学生信息的数据单位是A文件B数据库C字段D记录9数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A需求分析阶段B逻辑设计阶段C概念设计阶段D物理设计阶段10有两个关系R和T如下:则由关系R得到关系T的操作是A选择B投影C交D并11下列关于函数的描述中,错误的是A函数可以没有返回值B函数可以没有参数C函数可以是一个类的成员D函数不能被定义为模板12若MyClass是一个类名,且有如下语句序列MyClass c1,c2;MyClass c3=new MyClass;MyClass &c4=c1;上面的语句序列所定义的类对象的个数是A1B2C3D413下列关于继承方式的描述中,错误的是A如果不显式地指定继承方式,缺省的继承方式是私有privateB采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员C采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员D采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员14将前缀运算符“--”重载为非成员函数,下列原型中,能正确用于类中说明的是ADecr& operator --int;BDecr operator -- Decr&,int;Cfriend Decr& operator --Decr&;Dfrlend Decr operator --Decr&,int;15若MyTemp是一个只有一个虚拟类型参数的类模板,且有如下语句序列MyTempp2;MyTempp32;编译系统在处理上面的语句序列时,所生成的模板MyTemp的实例的个数是A1B2C3D016在C++中,cin是个A类B对象C模板D函数17在下列字符中,不允许作为C++标识符的是AbBBC_D218下列叙述中,错误的是Afalse是一个逻辑型常量B"b"是一个字符型常量C365是一个int常量D3.1415926是一个double常量19若x和y是程序中的两个整型变量,则下列if语句中正确的是Aifx==0 y=1; else y=2;Bifx==0 then y=1 else y=2;Cifx==0 y=1 else y=2;Dif x==0 y=1; else y=2;20要定义整型数组x,使之包括初值为O的三个元素,下列语句中错误的是Aint x3={0,0,0};Bint x={0};Cstatic int x3={0};Dint x={0,0,0};21关于函数中的<返回类型>,下列表述中错误的是A<返回类型>中有可能包含关键字intB<返回类型>中有可能包含自定义标识符C<返回类型>中有可能包含字符D<返回类型>中可能包含22要定义一个引用变量p,使之引用类MyClass的一个对象,正确的定义语句是AMyClass p=MyClass;BMyClass p=new MyClass;CMyClass &p=new MyClass;D MyClass a,&p=a;23有如下两个类定义class XX{private:double x1;protected:double x2;public:double x3;};class YY:protected XX{private:double y1;protected:double y2;public:double y3;};在类YY中保护成员变量的个数是A1B2C3D424下列关于运算符重载的描述中,错误的是A可以通过运算符重载在C++中创建新的运算符B赋值运算符只能重载为成员函数C运算符函数重载为类的成员函数时,第一操作数是该类对象D重载类型转换运算符时不需要声明返回类型25下列关于类模板的描述中,错误的是A类模板的成员函数都是模板函数B可以为类模板参数设置默认值C类模板描述了一组类D类模板中只允许有一个类型参数26下列控制格式输入输出的操作符中,能够设置浮点数精度的是AsetprecisionBsetwCsetfillDshowpoint27下列程序段中包含4个函数,其中具有隐含this指针的是int fun1;class Test{public:int fun2;friend int fun3;static int fun4;};Afun1Bfun2Cfun3Dfun428有如下程序includeusing namespace std;class Test{public:Test{ }Testconst Test &t {cout<<1;}};Test funTest &u {Test t=u; return t;}int main{Test x,y; x=funy; return 0;}运行这个程序的输出结果是A无输出B1C11D11129有如下程序includeusing namespace std;class A{public:Aint i=0:r1i { }void print {cout<<'E’<<R1<<'-';}< p>void print const {cout<<'C'<<R1R1<<'-';}< p> void printint x {cout <<'P'<<R1R1R1<<'-';}< p> private:int r1;};int main {A a1;const A a24;a1.print2;a1.print;return 0;}运行时的输出结果是AP8-E4BP8-C16-CP0-E4-DP0-C16-30下列代码声明了3个类class Person{};class Student:public Person{};class Undergraduate:Student{};下列关于这些类之间关系的描述中,错误的是A类Person是类Undergraduate的基类B类Undergraduate从类Student公有继承C类Student是类Person的派生类D类Undergraduate是类Person的派生类31有如下程序includeusing namespace std;Class Base{public:Baseint x=0:valBx {cout<<VALB;}< p>~Base {cout<<VALB;}< p>private:int valB;};class Derived:public Base{public:Derivedint x=0,int y=0:Basex,valDy{cout<<VALD;}< p>~Derived {cout<<VALD;}< p>private:int valD;};int main{Derived obj122,3;retuen 0;}运行时的输出结果是A2332B2323C3232D322332下面是类Shape的定义:class Shape{public:virtual void Draw=0;};下列关于Shape类的描述中,正确的是A类Shape是虚基类B类Shape是抽象类C类Shape中的Draw函数声明有误D语句“Shape s;”能够建立Shape的一个对象s33将运算符“+”重载为非成员函数,下列原型声明中,错误的是AMyClock operator + MyClock,long;BMyClock operator + MyClock,MyClock;CMyClock operator + long,long;DMyClock operator + long,MyClock;34打开文件时可单独或组合使用下列文件打开模式①ios_base::app ②ios_base::binary③ios_base::in ④ios_base::out若要以二进制读方式打开一个文件,需使用的文件打开模式为A①③B①④C②③D②④35有如下程序:includeusing namespace std;Class B{public:Bint xx:xxx {++cout; x+=10;}virtual void show const{cout<<COUNT<<'_'<<X<<ENDL;}< p>protected:static int count;private:int x;};class D:public B{public:Dint xx,int yy:Bxx,yyy {++count; y+=100;}virtual void show const{cout<<COUNT<<'_'<<Y<<ENDL;}< p>private:int y;};int B::count=0;int main{B ptr=new D10,20;ptr->show;delete ptr;return 0;}运行时的输出结果是A1_120B2_120C1_20D2_20二、填空题每空2分,共30分请将每一个空的正确答案写在答题卡l~15序号的横线上,答在试卷上不得分;1一个队列的初始状态为空;现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为 1 ;2设某循环队列的容量为50,如果头指针front=45指向队头元素的前一位置,尾指针rear=10指向队尾元素,则该循环队列中共有 2 个元素;3设二叉树如下:对该二叉树进行后序遍历的结果为 3 ;4软件是 4 、数据和文档的集合;5有一个学生选课的关系,其中学生的关系模式为:学生学号,姓名,班级,年龄,课程的关系模式为:课程课号,课程名,学时,其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:选课学号, 5 ,成绩;6若x和y是两个整形变量,在执行了语句序列x=5; y=6; y+=x--;后,x+y的值为 6 ;7在执行语句序列int i=0; do i++; whileii<10;时,do后面的循环体语句i++被执行的次数为 7 ;8有如下的函数定义:int Xfunint a, int n{int x=a;forint pa=a+1; pa<>ifpa>x x=pa;return x;}若执行了语句int x5={23,46,78,55,16};后,通过表达式Xfunx,5调用该函数,则得到的返回值为 8 ;9有如下的函数定义:int Xfunint x{int y=x;{int x=10; y+=x;}return x+y;}通过表达式Xfun5调用该函数,则得到的返回值为9 ;10假定Xcs是一个类,该类中一个成员函数的原型为“Xcs abc;”,则在类外定义时对应的函数头为 10 ;11请将下面的类Date的定义补充完整,使得由语句Date FirstDay;定义的对象FirstDay的值为2010年1月1日;class Date{public:Date 11 :yeary,monthm,dayd{ }private:int year,month,day; //依次表示年、月、日};12请将下面的程序补充完整,使得程序输出“飘是张娜的书”;includeusing namespace std;class Book{public:Bookchar str {strcpytitle,str;}12 void PrintInfo {cout<<TITLE<<ENDL;}< p>protected:char title50;};class MyBook:public Book{public:MyBookchar s1,char s2="张娜":13 {strcpyowner,s2;}virtual void PrintInfo {cout<<TITLE<<"是"OWNER<<"的书"<<ENDL;}< p>private:char owner10;};int main{Book prt=new MyBook"飘";prt->PrintInfo;return 0;}13在有理数类Rational中重载插入运算符<<,以便按a/q形式输出;请将<<运算符函数的定义补充完整;class Rational{public:Rationalint aa, int :aaa,q{ }friend 14 operator<<ostream &out, Rational &x {return out<<X.A<<' p <<x.q;<>}private:int a,q;};14下面的函数定义是某函数模板能够生成的函数实例int squareint n {return nn;}double squaredouble n {return nn;}由此可知,该函数模板的定义是 15 ;2007年4月计算机等级考试C++考试及答案一、选择题每小题2分,共70分下列各题A、B、C、D四个选项中,只有一个选项是正确的;请将正确选项涂写在答题卡相应位置上,答在试卷上不得分;1下列叙述中正确的是 ;A算法的效率只与问题的规模有关,而与数据的存储结构无关.B算法的时间复杂度是指执行算法所需要的计算工作量C数据的逻辑结构与存储结构是一一对应的.D算法的时间复杂度与空间复杂度一定相关.2在结构化程序设计中,模块划分的原则是 ;A 各模块应包括尽量多的功能B 各模块的规模应尽量大C各模块之间的联系应尽量紧密D 模块内具有高内聚度,模块间具有低耦合度3下列叙述中正确的是 ;A软件测试的主要目的是发现程序中的错误.B软件测试的主要目的是确定程序中错误的位置.C为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作D软件测试是证明软件没有错误4 下面选项中不属于面向对象程序设计特征的是 ;A继承性 B多态性 C类比性 D封装性5 下列对列的叙述正确的是 ;A 队列属于非线性表B 队列按”先进后出”的原则组织数据C队列在队尾删除数据D 队列按“先进先出”原则组织数据6对下列二叉树ADYBEAFCZX BYDEBFZXCA CABDYECFXZ DABCDEFXYZ7某二叉树中有n个度为2的结点则该二叉树中的叶子结点数为An+1 B n-1 C2n Dn/28在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是 ;A井 B交 C投影 D笛卡儿乘积9在E-R图中,用来表示实体之间是联系的图形是 ;A 矩形 B椭圆形 C菱形 D平行四边形10下列叙述中错误的是 ;A 在数据库系统中,数据的物理结构必须与逻辑结构一致.B数据库技术的根本目标是要解决数据的共享问题C数据库设计是指在已有数据库管理系统的基础上建立数据库D数据库系统需要操作系统的支持11为了取代C中带参数的宏,在C++中使用A重载函数 B内联函数 C递归函数 D友元函数12下列关于类定义的说法中,正确的是A类定义中包括数据成员和函数成员的声明B类成员的缺省访问权限是保护的C 数据成员必须被声明为私有的D成员函数只能在类体外进行定义13下列关于派生类构造函数和析构函数的说法中,错误的是A派生类的构造函数会隐含调用基类的构造函数B如果基类中没有缺省构造函数,那么派生类必须定义构造函数C在建立派生类对象时,先调用基类的构造函数,再调用派生类的构造函数D在销毁派生类对象时,先调用基类的析构函数,再调用派生类的析构函数14通过运算符重载,可以改变运算符原有的A操作数类型 B操作数个数 C优先级 D结合性15有如下函数模板:template <class T> T souareT x retumx x ;基中T是A函数形参 B函数实参 C模板形参 D模板实参16使用输入输出操作符setw,可以控制A输出精度 B输出宽度 C对齐方式 D填充字符17下列字符串中,不可以用作C++标识符的是Ay_2006 B____TEST__H CRetum Dswitch18字面常量42、4.2、42L的数据类型分别是Along、double int Blong、float、intCint、double、long Dint、float、long19执行下列语句段后,输出字符“”的个数是forint i =50;I>1;—i cout<<””A48 B49 C50 D5120有如下程序段inti =0, j=1;int&r=i ; // ①r =j; //②intp=&i ; //③p=&r ; //④基中会产生编译错误的语句是A④ B③ C② D ①21有如下函数定义:void func int a,int&b {a++; b++;}若执行代码段:intx=0 ,y=1funcx,y;则变量x和y值分别是A0和1 B1和1 C0和2 D1和222有如下程序:include<iostream>using namespace std;class A{publicstatic int a;void init{a=1;}Aint a=2 {init;a++;}};int A:;a=0A obj;Int main{cout<<obj.a;retum0;}运行时输出的结果是A0 B1 C2 D323下列有关继承和派生的叙述中,正确的是A 派生类不能访问基类的保护成员B作为虚基类的类不能被实例化C派生类应当向基类的构造函数传递参数D虚函数必须在派生类中重新实现24下列运算符中,不能被重载的是A&& B= C. D++25下列函数模板的定义中,合法的是A template<typename T> TabsT x {return x <0 – x: x;}Btemplate class <T>TabsTx{retumx<0 -x;x;} Ctemplate T<class T.>absT x{retum x<0 -x;x;} Dtemplate T absT x{returm x<0 -x;x;}26在语句cin>>data;中,cin是AC++的关键字 B类名C对象名 D函数名27有如下程序:include<iostream>using namespace std;class test {private:int a;public:test{cout<<”constructor”<<endl;}testint a{cout<<a<<endl;}testconst test&_test{a=_testa;cout<<”copy constructor”<<endl;}test{cout<<”destructor”<<endl;}};int main}test A3return0;运行时输出的结果是A3 BconstructordestruclorCcopy constructorD3dstructor destruclor28若有如下类声明class My Class {public:MyClass {cout<<1;}};执行下列语句MyClass a,b2,P2;以后,程序的输出结果是A11 B111 C1111 D1111129有如下程序:include<iostream>using namespace std;class point {public:static int number;public:point{number++;~point{number-;}};imt point::number=0;void main{pointptr;printA,B;{pointptr_point=new point{3};ptr=ptr_point;}pointC;cout<<point::number<<endl;deleteptr;}运行时输出的结果是A3 B4 C6 D730如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员,有如下程序,没有使用多态机制;include<iostream>using namespace std;class Base{int a,b;public:Baceint x ,int y { a=x; b=y;}Void show{ cout<<a<<’,’<<b<<endl;}}clsaa Derived:public Base {int c ,d;public:Derivedint x,int y,int z,int m:Basex,y{c=z; d=m;} Void show{ cout<<c<<’,’d<<endl;}};int main{Base B150,50,pb;Derived DI10,20,30,40;Pb=&D1;Pb->show;Return 0;}运行时输出的结果是A10,20 B30,40 C20,30 D50,5031有如下程序:include<iostream>using namespace std;class A{public;Aint i {x= i ;}Void sispa{cout<<x<<’,’;}Private:int x ;};class B;publicA{public;Bint i:Ai +10 {x =i ;}voud dispb {dispa;cout<<x<,endl;}Private:Int x;};int main{B b2;b.dispbretum 0:}运行时输出的结果是A10,2 B12,10 C12,2 D2,232虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用;有如下程序:include<iostream>using namespace std; class Base{public:virtual void f{cout<<”f0+”;}void g {cout<<”g0+”;}};class Derived:public Base{public:void f {cout<<”f+”;}void g {cout<<”g+”;}};int main{Derived d;Basep=&d;p->f; p->g;return 0:}运行时输出的结果是Af+g+ Bf0+g+ Cf+g0+ Df0+g0+33下面程序中对一维坐标点类Point进行运算符重载include<iostream>using namespace std;class point {public:point int vaI {x=val;}point& operator++{x++;retumthis;}print operator++int {point old=this,++this;retum old;}int GetX const {retum x;}private:int x;};int main{point a10;cout<<++a.GetX;cout<<a++.GetX;retum;}编译和运行情况是A运行时输出1011B运行时输出1111C运行时输出1112D编译有错34有如下程序:include<iostream>using namespace std;int main{char str100,p;cout<<”please input a string:”;cin>>str;p=str;forint i =0;p=”\0”;p++, i ++;cout<< i <<endl;retum 0;}运行这个程序时,若输入字符串为abcdefg abcd则输出结果是A7 B12 C13 D10035有如下程序::include<iostream>using namespace std:class Sample{friend long fun Sample s;public:Sample long a {x=a;}Private:long x;};long fun Sample s{ifs.x<2retum 1;retum s.xfunSamples.x-a;}int main{int sum=0forint i =0; i <6; i ++ { sum+=funSample i ; } cout<<sum;retum 0;}运行时输出的结果是A120 B16 C154 D34二、填空题每空2分,共30分请将每一个空的正确答案写在答题卡1~15序号的横线上,答在试卷上不得分;1在深度为7的满二叉树中,度为2的结点个数为 1 ; 2软件测试分为白箱盒测试和黑箱盒测试,等价类划分法属于 2 测试;3在数据库系统中,实现各种数据管理体制功能的核心软件称为 3 ;4软件生命周期可分为多个阶段,一般分为定义阶段、开发和维护阶段;编码和测试属于 4 阶段; 5在结构化分析使用的数据流图DFD中,利用 5 对其中的图形元素进行确切解释;6C++中只有两个逻辑常量:true和 6 ;7若要访问指针变量p所指向的数据,应使用表达式 7 ; 8已知一个函数的原型是:int fndouble x;若要以5.27为实参调用该函数,应使用表达式 8 ;9有如下定义:class MA{int value;public:MAint n=0:valutn{}};MAta,tb;其中MA类的对象名标识符是 9 ;10如下类定义中包含了构造函数和拷贝数的原型声明请在横线处写正确的内容,使拷贝构造函数的声明完整;Class my Class{Private:Int data:Public:MyClassint value; //构造函数MyClassconst 10 another Object; //拷贝构造函数}11用来派生新类的称为 11 ,而派生出的新类称为它的子类或派生类;12有如下程序:include<iostream>using namespace std;clsaa CA{public:CAD{cout<<A’;}};class CB ;private CA{public;CB{cout<<B’;}};int main{cout<<B’;}};int main{CA a;CB b;retum0;}这个程序的输出结果是 12 ;13若将一个二元运算符重载为类的成员函数,其形参个数应该是 13 个;14有如下程序:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(16) 设有以下定义
int a=0;
double b=1.25;
char c=’A’;
#define d 2
则下面语句中错误的是
A) a++; B) b++ C) c++; D) d++;
(17) 设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式 计算结果不相符的是
A) 单片机 B) 单板机
C) 不装备任何软件的计算机 D) 只装备操作系统的计算机
(4) 能将高级语言编写的源程序转换成目标程序的是
A) 链接程序 B) 解释程序 C) 编译程序 D) 编辑程序
(5) 在64位计算机中,一个字长所占的字节数为
A) 64 B) 8 C) 4 D) 1
(6) 在Windows环境下,当一个应用程序窗口被最小化后,该应用程序
A) 继续在后台运行 B) 继续在前台运行
C) 终止运行 D) 暂停运行
(7) 在Windows环境下,能实现窗口移动的操作是
A) 用鼠标拖动窗口中的任何部位 B) 用鼠标拖动窗口的边框
A) _main B) If C) txt D) int
enclude -max REAL k_2
sin turbo 3COM _001
(15) 若以下选项中的变量已正确定义,则正确的赋值语句是
A) x1=26.8%3 B) 1+2=x2 C) x3=0x12 D) x4=1+2=3;
}
执行后输出结果是
A) 7 7 B) 8 8 C) 8 10 D) 10 10
(32) 有以下程[])
{ int t;
t=c[0];c[0]=c[1];c[1]=t;
}
void swap2(int c0,int c1)
(24) 有以下程序
main( )
{ int i,s=0;
for(i=1;i<10;i+=2) s+=i+1;
printf(“%d\n”,s);
}
程序执行后的输出结果是
A) 自然数1~9的累加和 B) 自然数1~10的累加和
(1) 1MB等于
A) 1000字节 B) 1024字节
C) 1000×1000字节 D) 1024×1024字节
(2) 与十六进制数200等值的十进制数为
A) 256 B) 512 C) 1024 D) 2048
(3) 所谓“裸机”是指
A) if((a>B) &&(b>C) ) k=1; B) if((a>B) ||(b>C) ) k=1
else k=0;
C) if(a<=B) k=0; D) if(a>B) k=1;
else if(b<=C) k=1; else if(b>C) k=1;
else k=0;
}
执行后输出结果是
A) 10,01 B) 02,12 C) 102,10 D) 02,10
(19) 以下4个选项中,不能看作一条语句的是
A) {;} B) a=0,b=0,c=0; C) if(a>0); D) if(b==0) m=1;n=2;
C) 用鼠标拖动窗口的控制按钮 D) 用鼠标拖动窗口的标题栏
(8) 在Windows环境下,PrintScreen键的作用是
A) 打印当前窗口的内容 B) 打印屏幕内容
C) 复制屏幕到剪贴板 D) 复制当前窗口到剪贴板
(9) Internet的通信协议是
}
其输出结果是
A) 5 3 5 3 B) 5 3 3 5 C) 3 5 3 5 D) 3 5 5 3
(33) 有以下程序
void sum(int *A)
{ a[0]=a[1];}
main( )
{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i;
{ int t;
t=c0;c0=c1;c1=t;
}
main( )
{ int a[2]={3,5},b[2]={3,5};
swap1(A) ; swap2(b[0],b[1]);
printf(“%d %d %d %d\n”,a[0],a[1],b[0],b[1]);
{ int i,j,s=0;
for(j=0;j<4;j++)
{ i=j;
if(i>2) i=3-j;
s+=b[i][j];
}
return s;
}
main( )
{ int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}};
printf(“%c\n”,fun(fun(a,B) ,fun(b,C) ));
}
程序的执行结果是
A) 函数调用出错 B)8 C)9 D)7
(28) 设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是
A) p=1; B) *q=2; C) q=p; D) *p=5;
(20) 设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是
A) scanf(“%d”,pA) ; B) scanf(“%d”,A) ;
C) scanf(“%d”,&pA) ; D) scanf(“%d”,*pA) ;
(21) 以下程序段中与语句k=a>b?(b>c?1:0):0;功能等价的是
(22) 有以下程序
main( )
{ char k; int I;
for(i=1;i<3;i++)
{ scanf(“%c”,&k);
switch(k)
{ case ‘0’: printf(“another\n”);
case ‘1’: printf(“number\n”);
(11) 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是
A) 有零个或多个输入 B) 有零个或多个输出
C) 有穷性 D) 可行性
(12) 以下叙述中正确的是
A) C语言的源程序不必通过编译就可以直接运行
B) C语言中的每条可执行语句最终都将被转换成二进制的机器指令
b=p[5];
b中的值是
A) 5 B) 6 C) 8 D) 9
(31) 31、有以下程序
main( )
{ char a[]=”abcdefg”,b[10]=”abcdefg”;
printf(“%d %d\n”,sizeof(A) ,sizeof(B) );
C) 自然数1~9中的奇数之和 D) 自然数1~10中的偶数之和
(25) 有以下程序 main( )
{ int i,n=0;
for(i=2;i<5;i++)
{ do
{ if(i%3) continue;
n++;
} while(!i);
A) (a+B) *h/2 B) (1/2)*(a+B) *h
C) (a+B) *h*1/2 D) h/2*(a+B)
(18) 有以下程序
main( )
{
int x=102,y=012;
printf(“%2d,%2d\n”,x,y);
D) double myadd(double x,double y);
(27) 有以下程序
char fun(char x , char y)
{ if(x return y;
}
main( )
{ int a=’9’,b=’8’,c=’7’;
(23) 有以下程序
main( )
{ int x=0,y=5,z=3;
while(z-->0&&++x<5) y=y-1;
printf(“%d,%d,%d\n”,x,y,z);
}
程序执行后的输出结果是
A) 3,2,0 B) 3,2,-1 C) 4,3,-1 D) 5,-2,-5
{ return (a+B) ;}
并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是
A) double myadd(double a,B) ;
B) double myadd(double,double);
C) double myadd(double b,double A) ;
A) TCP/IP B) BBS C) WWW D) FTP
(10) 下列叙述中正确的是
A) 计算机病毒只感染可执行文件
B) 计算机病毒只感染文本文件
C) 计算机病毒只能通过软件复制的方式进行传播
D) 计算机病毒可以通过网络或读写磁盘等方式进行传播
C) C源程序经编译形成的二进制代码可以直接运行
D) C语言中的函数不可以单独进行编译
(13) 以下符合C语言语法的实型常量是
A) 1.2E0.5 B) 3.14.159E C) .5E-3 D) E15
(14) 以下4组用户定义标识符中,全部合法的一组是
广西计算机二级C笔试历年真题3
[ 作者:佚名 转贴自:本站原创 点击数:162 文章录入:admin ]