全国计算机等级考试无纸化真考题库试卷二级C
全国计算机等级考试无纸化真考题库试卷二级C++(5)

全国计算机等级考试无纸化真考题库试卷(5)二级C++(考试时问120分钟,满分100分)一、选择题(每小题1分。
共40分)(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)面向对象方法中,继承是指( )。
A)一组对象所具有的相似性质B)一个对象具有另一个对象的性质C)各对象之间的共同性质D)类之间共享属性和操作的机制(7)层次型、网状型和关系型数据库划分原则是( )。
A)己录长度B)文件的大小C)联系的复杂程度D)数据之间的联系方式(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员及实体计算机之间的联系是( )。
A)一对一B)一对多C)多对多D)多对一(9)数据库设计中反映用户对数据要求的模式是( )。
A)内模式B)概念模式C)外模式D)设计模式(10)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
A)自然连接B)差C)交D)并(11)下列符号中能够作为C++标识符的是( )。
全国计算机等级考试二级C笔试试卷(含参考答案)

全国计算机等级考试二级C笔试试卷(含参考答案)以下各题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)在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言) B)PAD图 C)N-S图 D)DFD图(7)以下表达中正确的选项是A)软件交付使用后还需要进展维护B)软件一旦交付使用就不需要再进展维护C)软件交付使用后其生命周期就完毕D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决A)数据共享问题 B)数据平安问题C)大量数据存储问题 D)简化数据维护(9)设有如下关系表:R S TA B C A B C A B C1 123 1 3 1 1 22 23 2 2 33 1 3那么以下操作中正确的选项是A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S(10)数据库系统的核心是A)数据模型 B)数据库管理系统 C)数据库 D)数据库管理员(11)以下表达中错误的选项是A)用户所定义的标识符允许使用关键字B)用户所定义的标识符应尽量做到“见名知意”C)用户所定义的标识符必须以字母或下划线开头D)用户定义的标识符中,大、小写字母代表不同标识(12)以下表达中错误的选项是A)C语句必须以分号完毕B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行D)赋值表达式末尾加分号就构成赋值语句(13)以下表达中正确的选项是A)调用printf函数时,必须要有输出项B)使用putchar函数时,必须在之前包含头文件stdio.hC)在中,整数可以以十二进制、八进制或十六进制的形式输出D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码(14)以下关于函数的表达中正确的选项是A)每个函数都可以被其它函数调用(包括main函数)B)每个函数都可以被单独编译C)每个函数都可以单独运行D)在一个函数内部可以定义另一个函数(15)假设有语句:char *line[5];,以下表达中正确的选项是A)定义line是一个数组,每个数组元素是一个基类型为char 的指针变量B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C)定义line是一个指针数组,语句中的*号称为间址运算符D)定义line是一个指向字符型函数的指针(16)有以下程序段typedef struct NODE{ int num; struct NODE *next;} OLD;以下表达中正确的选项是A)以上的说明形式非法 B)NODE是一个构造体类型C)OLD是一个构造体类型 D)OLD是一个构造体变量(17)以下表达中错误的选项是A)C语言中对二进制文件的访问速度比文本文件快B)C语言中,随机文件以二进制代码形式存储数据C)语句 FILE fp; 定义了一个名为fp的文件指针D)C语言中的文本文件以ASCII码形式存储数据(18)当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是A)k%2 B)k%2==1 C)(k%2)!=0 D)!k%2==1(19)以下不能正确计算代数式值的C语言表达式是A)1/3*sin(1/2)*sin(1/2) B)sin(0.5)*sin(0.5)/3C)pow(sin(0.5),2)/3 D)1/3.0*pow(sin(1.0/2),2)(20)以下能正确定义且赋初值的语句是A)int n1=n2=10; B)char c=32;C)float f=f+1.1; D)double x=12.3E2.5;(21)以下程序的功能是:给r输入数据后计算半径为r的圆面积s。
全国计算机等级考试无纸化真考题库试卷二级C (6)

全国计算机等级考试无纸化真考题库试卷(6)二级C++(考试时间l20分钟,满分100分)一、选择题(每小题1分,共40分)(1)下列关于栈叙述正确的是( )。
A)栈顶元素最先能被删除B)栈顶元素最后才能被删除c)栈底元素永远不能被删除D)栈底元素最先被删除(2)下列叙述中正确的是( )。
A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化D)以上说法都不正确(3)某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。
A)3B)4C)6D)7(4)软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( )。
A)学生成绩管理系统B)C语言编译程序C)UNIX操作系统D)数据库管理系统(5)结构化程序所要求的基本结构不包括( )。
A)顺序结构B)GOT0跳转C)选择(分支)结构D)重复(循环)结构(6)下面描述中错误的是( )。
A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具(7)负责数据库中查询操作的数据库语言是( )。
A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)一个教师可讲授多门课程,一门课程可由多个教师讲授。
则实体教师和课程间的联系是( )。
A)1:1联系B)1:m联系C)m:1联系D)m:n联系(9)有三个关系R S和T如下.则由关系R和S得到关系T的操作是( )。
A)自然连接B)并C)交D)差(10)定义无符号整数类为UInt,下面可以作.为类UInt实例化值的是( )。
A)一369B)369C)0.369D)整数集合{1,2,3,4,5}(11)C++语言对C语言做了很多改进,C++语言相对于C语言的最根本的变化是( )。
全国计算机等级考试无纸化考试二级C选择题题库

二级C语言相关考点1、以下选项中,能用作数据常量的是________。
(标准答案:C)(A)o115 (B)0118 (C)115L (D)1.5e1.52、下列叙述中错误的是_______。
(标准答案:A)(A)一个C语言程序只能实现一种算法(B)一个C函数可以单独作为一个C程序文件存在(C)C程序可以由一个或多个函数组成(D)C程序可以由多个程序文件组成3、设变量已正确定义并赋值,以下正确的表达式是_______。
(标准答案:B)(A)int(15.8%5) (B)x=y+z+5, ++y (C)x=25%5.0 (D)x=y*5=x+z4、以下叙述中错误的是_____________。
(标准答案:A)(A)C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令(B)C语言源程序经编译后生成后缀为.obj的目标程序(C)用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中(D)C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件5、按照C语言规定的用户标识符命名规则,不能出现在标识符中的是___________。
(标准答案:D)(A)大写字母(B)下划线(C)数字字符(D)连接符6、以下选项中,合法的一组C语言数值常量是__________。
(标准答案:D)(A) 0x8A 10,000 3.e5 (B).177 4e1.5 0abc(C) 028 .5e-3 -0xf (D)12. 0Xa23 4.5e07、以下选项中不合法的标识符是__________。
(标准答案:C)(A)print (B)FOR (C)&&a (D)_008、若有定义:double a=22;int i=0,k=18;,则不符合C语言规定的赋值语句是(A)i=(a+k)<=(i+k); (B)a=a++,i++; (C)i=a%11; (D)i=!a;标准答案:C11、设有定义:int x=2;,以下表达式中,值不为6的是(A)x*=(1+x) (B)x*=x+1 (C)x++,2*x (D)2*x, x+=2标准答案:D12、有以下程序#include <stdio.h>main(){ int x, y, z;x=y=1;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序运行后的输出结果是(A)2,3,3 (B)2,2,1 (C)2,3,2 (D)2,3,1标准答案:D13、以下叙述中错误的是(A)使用三种基本结构构成的程序只能解决简单问题(B)C语言是一种结构化程序设计语言(C)结构化程序由顺序、分支、循环三种基本结构组成(D)结构化程序设计提倡模块化的设计方法标准答案:A14、以下选项中,能用作用户标识符的是(A)8_8 (B)unsigned (C)_0_ (D)void标准答案:C15、C源程序中不能表示的数制是(A)二进制(B)十六进制(C)十进制(D)八进制标准答案:A16、若有定义语句:int x=10; ,则表达式x-=x+x的值为(A)0 (B)10 (C)-20 (D)-10标准答案:D17、以下选项中不合法的标识符是(A)&a (B)print (C)_00 (D)FOR标准答案:A18、以下关于结构化程序设计的叙述中正确的是(A)一个结构化程序必须同时由顺序、分支、循环三种结构组成(B)有三种基本结构构成的程序只能解决小规模的问题(C)在C语言中,程序的模块化是利用函数实现的(D)结构化程序使用goto语句会很便捷标准答案:C19、对于一个正常运行的C程序,以下叙述中正确的是(A)程序的执行总是从main函数开始,在程序的最后一个函数中结束(B)程序的执行总是从程序的第一个函数开始,在main函数结束(C)程序的执行总是从main函数开始(D)程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束标准答案:C20、以下选项中能表示合法常量的是(A)1.5E2.0 (B)“\007” (C)1, 200 (D)‘\ ’标准答案:B21、以下定义语句中正确的是(A)float a=1,*b=&a,*c=&b; (B)int a=b=0;(C)double a=0.0;b=1.1; (D)char A=65+1,b=’b’;标准答案:D22、若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是(A)double(x)/10 (B)x=x+10=x+y (C)x+1=y (D)++x,y=x-- 标准答案:D23、计算机能直接执行的程序是(A)可执行程序(B)目标程序(C)源程序(D)汇编程序标准答案:A24、以下叙述中正确的是(A)C语言规定必须用main作为主函数名,程序将从此开始执行(B)C语言程序将从源程序中第一个函数开始执行(C)main的各种大小写拼写形式都可以作为主函数名,如MAIN,Main等(D)可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行标准答案:A25、以下选项中可用作C程序合法实数的是(A)E9 (B)9.12E (C)3.0e1.2 (D) .1e0标准答案:D26、下列定义变量的语句中错误的是(A)float US$; (B)double int_; (C)char For; (D)int _int; 标准答案:A27、表达式:(int)((double)9/2)-9%2的值是(A)5 (B)4 (C)0 (D)3标准答案:D28、以下叙述中错误的是(A)算法正确的程序对于相同的输入一定有相同的结果(B)算法正确的程序可以有零个输入(C)算法正确的程序可以有零个输出(D)算法正确的程序最终一定会结束标准答案:C29、以下叙述中正确的是(A)C语言程序中的注释必须与语句写在同一行(B)简单C语句必须以分号结束(C)C语句必须在一行内写完(D)C程序中的每一行只能写一条语句标准答案:B30、以下选项中关于C语言常量的叙述错误的是(A)经常被使用的变量可以定义成常量(B)常量分为整型常量、实型常量、字符常量和字符串常量(C)所谓常量,是指在程序运行过程中,其值不能被改变的量(D)常量可分为数值型常量和非数值型常量标准答案:A31、以下选项中,不合法的C语言用户标示符是(A)AaBc (B)a_b (C)_1 (D)a--b标准答案:D32、若变量均已正确定义并赋值,以下合法的C语言赋值语句是(A)x=y==5; (B)x=5=4+1; (C)x+n=i; (D)x=n%2.5;标准答案:A33、以下选项中关于程序模块化的叙述错误的是(A)把程序分成若干相对独立的模块,可便于编码和测试(B)可采用自顶向下、逐步细化的设计方法把若干独立模块组装成所要求的程序(C)把采用分成若干相对独立、功能单一的模块,可便于重复使用这些模块(D)可采用自顶向上、逐步细化的设计方法把若干独立模块组装成所要求的程序标准答案:D34、以下叙述中正确的是(A)C程序中的注释只能出现在程序的开始位置和语句的后面(B)C程序书写格式严格,要求一行内只能写一个语句(C)用C语言编写的程序只能放在一个程序文件中(D)C程序书写格式自由,一个语句可以写在多行上标准答案:D35、以下不合法的数值常量是(A)1e1 (B)0xabcd (C)8.0E0.5 (D)011标准答案:C36、以下关于C语言数据类型使用的叙述中错误的是(A)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(B)若要保存带有多位小数的数据,可使用双精度类型(C)整数类型表示的自然数是准确无误差的(D)若要处理“人员信息”等含有不同类型的相关数据,应自定义结构体类型标准答案:A37、设有定义int k=0;以下选项的四个表达式中与其他三个表达式的值不相同的是(A)++k (B)k++ (C)k+1 (D)k+=1标准答案:B38、以下叙述中错误的是(A)C程序在运行过程中所有计算都以二进制方式进行(B)C程序在运行过程中所有计算都以十进制方式进行(C)C程序中字符变量存放的是字符的ASCII值(D)所有C程序都需要编译链接无误后才能运行标准答案:B39、以下关于C语言的叙述中正确的是(A)C语言中的注释不可以夹在变量名或关键字的中间(B)C语言中的变量可以再使用之前的任何位置定义(C)在C语言算数表达式的书写中,运算符两侧的运算数类型必须一致(D)C语言的数值常量中夹带空格不影响常量值的正确表示标准答案:A40、以下不合法的字符常量是(A)‘\018’(B)‘\”’(C)‘\\’(D)‘\xcc’标准答案:A41、以下选项中正确的定义语句是(A)double a=7,b=7; (B)double a;b; (C)double,a,b; (D)double a=b=7; 标准答案:A42、若有定义语句int a=3,b=2,c=1;以下选项中错误的赋值表达式是(A)a=(b=4)=3; (B)a=1+(b=c=4); (C)a=(b=4)+c; (D)a=b=c+1;标准答案:A43、下列叙述中错误的是(A)一个C语言程序只能实现一种算法(B)一个C函数可以单独作为一个C程序文件存在(C)C程序可以由一个或多个函数组成(D)C程序可以由多个程序文件组成标准答案:A44、C语言源程序名的后缀是(A) .c (B) .cp (C) .obj (D) .exe标准答案:A45、以下选项中不能用作C程序合法常量的是(A)123 (B)‘\123’(C)“\x7D”(D)1,234标准答案:D46、表达式a+=a-=a=9的值是(A)0 (B)-9 (C)18 (D)9标准答案:A47、若有定义语句:int x=12,y=8,z;在其后执行语句Z=0.9+x/y;则z的值为(A)2.4 (B)2 (C)1.9 (D)1标准答案:D48、以下选项中合法的标识符是(A)1-1 (B)1__(C)1_1 (D)_11标准答案:D49、表达式3.6-5/2+1.2+5%2的值是(A)4.8 (B)4.3 (C)3.8 (D)3.3标准答案:C50、有以下定义:int a;long b;double x,y;则以下选项中正确的表达式是(A)a=x<>y (B)a%(int)(x-y) (C)y=x+y=x (D)(a*y)%b标准答案:B51、有以下程序#include <stdio.h>Main(){ int a=0,b=0; /*给a赋值b=20; /*给b赋值*/printf(“a+b=%d\n”,a+b); /*输出计算结果*/}程序运行后的输出结果(A)出错(B)a+b=0 (C)a+b=30 (D)a+b=10 标准答案:D52、我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令,关于转换以下说法错误的是(A)一条C语句可能会被转换成零条机器指令(B)某种类型和格式的C语句被转换成机器指令的条数是固定的(C)一条C语句可能会被转换成多条机器指令(D)一条C语句对应转换成一条机器指令标准答案:D53、关于C语言的符号常量,以下叙述中正确的是(A)符号常量在整个程序中其中都不会被重新定义(B)符号常量的符号名是标识符,但必须大写(C)符号常量的符号名必须是常量(D)符号常量是指在程序中通过宏定义用一个符号名来代表一个常量标准答案:D54、若有以下程序#include <stdio.h>main(){int b=10,a=-11;a%=b%=4;printf(“%d %d\n”,a,b);}则程序的输出结果是(A)1 2 (B)-1 2 (C)1 -2 (D)-1 -2标准答案:B55、若有以下程序#include <stdio.h>main(){int a=0,b=0,c=0;c=(a-=++a),(a+=b,b+=4);printf(“%d,%d,%d\n”,a,b,c);}则程序的输出结果是(A)0,4,0 (B)0,4,4 (C)1,4,4 (D)1,4,1标准答案:A56、若有以下程序#include <stdio.h>main(){int a=0,b=0,c=0,d;c=(a+=b,,b+=a); /*第4行*/d=c;; /*第5行*/; /*第6行*/printf(“%d,%d,%d\n”,a,b,c); /*第7行*/}编译时出现错误,你认为出错的是(A)第6行(B)第5行(C)第7行(D)第4行标准答案:D57、关于算法,以下叙述中错误的是(A)一个算法对于某个输入的循环次数是可以事先估计出来的(B)同一个算法对于相同的输入必须得出相同的结果(C)某个算法可能会没有输入(D)任何算法都能转换成计算机高级语言的程序,并在有限时间内运行完毕标准答案:D58、关于C语言的变量,以下叙述中错误的是(A)由三条下划线构成的符号名是合法的变量名(B)所谓变量是指在程序运行过程中其值可以被改变的量(C)程序中用到的所有变量都必须先定义后才能使用(D)变量所占的存储单元地址可以随时改变标准答案:D59、若有以下程序#include <stdio.h>main(){int a=-11,b=10;a/=b/=4;printf(“%d %d\n”,a,b);}(A)4 -3 (B)5 -3 (C)-1 -2 (D)5 -2标准答案:D60、#include <stdio.h>main(){int a=0,b=0,c=0;c=(a+=++b,b+=4);printf(“%d,%d,%d\n”,a,b,c);}则程序的输出结果是(A)1,5,1 (B)-1,4,-1 (C)-1,4,4 (D)1,5,5标准答案:D61、以下选项中不属于C语言标识符的是(A)关键字(B)预定义标识符(C)用户标识符(D)常量标准答案:D62、以下选项中不属于C语言程序运算符的是(A)&& (B)()(C)sizeof (D)<>标准答案:D63、若变量已正确定义并赋值,以下不能构成C语句的选项是(A)A=a+b; (B)B++; (C)A?a:b; (D)a=a+b标准答案:D64、若有以下程序段double x=5.16894;printf(“%f\n“,(int)(x*1000+0.5)/(double)1000);则程序段的输出结果是(A)5.169000 (B)5.175000 (C)5.170000 (D)5.168000 标准答案:A65、以下不能用于描述算法的是(A)文字叙述(B)伪代码和流程图(C)程序语句(D)E-R图标准答案:D66、以下叙述中合法的实型常量是(A)2.0*10 (B) .914 (C)0 (D)3.13e-2.1 标准答案:B67、以下叙述中正确的是(A)若有int 4,b=9;执行了a=b;b=a;之后,a的值为9,b的值为4(B)在赋值表达式中,赋值号的右边可以是变量,也可以是表达式(C)若有int 4,b=9;执行了a=b后,a的值已由原值改变为b的值,b的值变为0(D)a是实型变量,a=10在C语言中是允许的,因此可以说:实型变量中可以存放整型数标准答案:B68、以下选项中合法的常量是(A)sizeof (B)A% (C)5a (D)_10_标准答案:D69、不能正确表示数学式的表达式是(A)a*b/c (B)a*(b/c) (C)a/c*b (D)a/b*c 标准答案:D70、#include <stdio.h>main(){int a=3;printf(“%d\n”,a+=a-=a*a);}程序运行后的输出结果是(A)9 (B)-12 (C)0 (D)3标准答案:B71、以下叙述中正确的是(A)结构化程序的三种基本结构是循环结构、选择结构、顺序结构(B)N-S流程图只能描述简单的顺序结构的程序(C)计算机可以直接处理C语言程序,不必进行任何转换(D)程序的算法只能使用流程图来描述标准答案:A71、以下叙述中正确的是(A)书写源程序时,必须注意缩进格式,否则程序会有编译错误(B)程序的主函数名除了main外,也可以使用Main或_main(C)程序可以包含多个主函数,但总是从第一个主函数处开始执行(D)在C程序中,模块化主要是通过函数来实现的标准答案:D72、C语言中double类型数据占字节数为(A)12 (B)8 (C)4 (D)16标准答案:B73、以下叙述中正确的是(A)用户自定义标识符必须“见名知意”,如果随意定义,则会出编译错误(B)语言中的关键字不能作变量名,但可以作为函数名(C)标识符的长度不能任意长,最多只能包含16个字符(D)标识符总是有字母、数字和下划线组成,且第一个字符不得是数字标准答案:D74、以下叙述中正确的是(A)空语句就是指程序中的空行(B)花括号对{}只能用来表示函数的开头和结尾,不能用于其他目的(C)复合语句在语法上包含多条语句,其中不能定义局部变量(D)当用scanf从键盘输入数据时,每行数据在没有按下回车键(Enter键)前,可以任意修改标准答案:D75、以下叙述中正确的是(A)程序必须包含所有三种基本结构才能成为一种算法(B)如果算法非常复杂,则需要使用三种基本结构之外的语句结构,才能准确表达(C)只有简单算法才能在有限的操作步骤之后结束(D)我们所写的每条C语句,经过编译最终都将转换成二进制的机器指令标准答案:D76、以下叙述中正确的是(A)在C语言程序设计中,所有函数必须保存在一个源文件中(B)结构化程序必须包含所有的三种基本结构,缺一不可(C)只要包含了三种基本结构的算法就是结构化程序(D)在算法设计时,可以把复杂任务分解成一些简单的子任务标准答案:D77、以下叙述中正确的是(A)预定义的标识符是C语言关键字的一种,不能另作他用(B)只能在函数体内定义函数,其他地方不允许定义变量(C)常量的类型不能从字面形式上区分,需要根据类型名来决定(D)整型常量和实型常量都是数值型常量标准答案:D78、以下叙述中正确的是(A)八进制数的开头要使用英文字母o,否则不能与十进制区分开(B)英文大写字母X和英文小写字母x都可以作为二进制数字的开头字符(C)在C程序中的八进制和十进制,可以是否点数(D)整型变量可以分为int型、short型、long型、unsigned型四种标准答案:D79、以下叙述中正确的是(A)C语言程序总是从main函数开始执行(B)C语言程序所调用的函数必须放在main函数的前面(C)C语言程序中main函数必须放在程序开始位置(D)C语言程序总是从最前面的函数开始执行标准答案:A80、C语言程序中,运算对象必须是整型数的运算符是(A)% (B)/ (C)* (D)&&标准答案:A81、#include <stdio.h>main(){int sum,pad,pAd;sum=pad=5;pAd=++sum,pAd++,++pad;printf(“%d\n”,pad);}程序的输出结果是(A)7 (B)5 (C)8 (D)6 标准答案:D82、以下四个程序中,完全正确的是(A)#include <stdio.h> main();{/*/ programming /*/printf("programming!\n"); } (B)#include <stdio.h> main(){/* programming */printf("programming!\n"); } (C)#include <stdio.h> main(){/*/* programming */*/printf("programming!\n"); } (D)include <stdio.h>main(){/* programming */printf("programming!\n"); }标准答案:B83、有以下程序#include <stdio.h>main(){ int a=1,b=0;printf("%d,",b=a+b);printf("%d\n",a=2*b);}程序运行后的输出结果是(A)1,0 (B)0,0 (C)1,2 (D)3,2标准答案:C84、有以下程序#include <stdio.h>main(){ char a,b,c,d;scanf("%c%c",&a, &b);c=getchar(); d=getchar();printf("%c%c%c%c\n",a,b,c,d);}当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符)12<CR>34<CR>则输出结果是(A)12(B)123(C)1234(D)1234标准答案:B85、有以下程序#include <stdio.h>main(){ char c1,c2;c1='A'+'8'-'4';c2='A'+'8'-'5';printf( "%c,%d\n",c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是(A)输出无定值(B)E,D (C)D,69 (D)E,68标准答案:D86、有以下程序#include <stdio.h>main(){ int a1,a2; char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);printf("%d,%c,%d,%c",a1,c1,a2,c2);}若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b 则正确的输入格式是(以下ㄩ代表空格,<CR>代表回车)(A)12a34b<CR> (B)12ㄩa34ㄩb<CR> (C)12,a,34,b<CR> (D)12ㄩaㄩ34ㄩb<CR>标准答案:A87、若变量已正确定义为int型,要通过语句Scanf(“%d,%d,%d”,&a,&b,&c);给a赋值1、给b赋值2、给c赋值3,以下输入形式中语法错误的是(注:□代表一个空格符)(A)□□□1,2,3<回车> (B)1□2□3<回车>(C)1,2,3<回车> (D)1,□□□2,□□□3<回车>标准答案:B88、设变量均已正确定义,若通过scanf("%d%c%d%c",&a1,&c1,&a2,&c2);语句为变量a1和a2赋数值10和20,为变量c和c2赋字符X和Y,以下所示的输入形式正确的是(A)10□X<回车>20□Y<回车>(B)10□X□20□Y<回车>(C)10X<回车>20Y<回车>(D)10□X20□Y<回车>标准答案:C89、设有定义int a; float b;执行scanf(“%2d%f”,&a,&b);语句时,若从键盘输入876 543.0<回车>则a和b的值分别是(A)76和543.0(B)87和543.0(C)876和543.0(D)87和6.0标准答案:D90、有如下程序段:int x=12;double y=3.141593;printf(“%d%8.6f”,x,y)其输出结果是(A)123.141593 (B)12 3.141593 (C)123.1415930 (D)12,3.141593标准答案:A91、若有定义:int a,b;通过语句scanf(“%d;%d”,&a,&b);能把整数3赋值给变量a,5赋值给变量b的输入数据是(A)35 (B)3 5 (C)3,5 (D)3;5 标准答案:D92、阅读以下程序#include <stdio.h>main(){ int case;float printF;printf(“请输入2个数:”);scanf(“%d %f”,&case,&printF);printf(“%d %f\n”,case,printF);}该程序在编译时产生错误,其出错原因是(A)定义语句出错,case是关键字,不能用作用户自定义标识符(B)定义语句出错,scanf不能作为输入函数使用(C)定义语句出错,printf不能输出擦色的值(D)定义语句出错,printF不能用作用户自定义标识符标准答案:A93、若有定义int a;float b;double c;程序运行时输入:3 4 5<回车>能把3输入给变量a、4输入给变量b、5输入给变量c的语句是(A)scanf(“%d%f%f”,&a,&b,&c);(B)scanf(“%d%lf%lf”,&a,&b,&c);(C)scanf(“%lf%lf%lf”,&a,&b,&c);(D)scanf(“%d%f%lf”,&a,&b,&c);标准答案:D94、设有定义double a,b,c;若要求通过分别给a、b、c输入1、2、3,输入形式如下(注:此处□代表一个空格)则能进行正确输入的语句是(A)scanf(“%f%f%f”,&a,&b,&c); (B)scanf(“%lf%lf%lf”,a,b,c);(C)scanf(“%5.11lf%5.11lf%5.11lf”,&a,&b,&c);(D)scanf(“%lf%lf%lf”,&a,&b,&c);标准答案:D95、以下叙述中正确的是(A)scanf和printf是C语言提供的输入和输出语句(B)由printf输出的数据的实际精度是由格式控制中的域宽和小数的域宽来完全决定(C)由printf输出的数据都隐含左对齐(D)赋值语句是一种执行语句,必须放在函数的可执行部分标准答案:D96、以下叙述中正确的是(A)在使用scanf函数输入整型或实数时,输入数据之间只能用空格来分隔(B)在scanf函数中的格式控制字符串是为了输入数据用的,不会输出到屏幕上(C)使用printf函数无法输入百分号%(D)在printf函数中,各个输出项只能是变量标准答案:B97、以下叙述中正确的是(A)复合语句也被称为语句块,它至少要包含两条语句(B)在scanf函数的格式中,必须有与输出项一一对应的格式转换说明(C)scanf函数中的字符串,是提示程序员的。
计算机二级C语言新增无纸化真题试卷

计算机二级C语言新增无纸化真题试卷计算机二级C语言新增无纸化真题试卷一、选择题(每小题1分,共40分)1、有以下程序:程序运行后的输出结果是( )。
A.10,One{Drealn!B.9,One*Drealll!C.9,One*WorldD.10,One*World2、输出语句:prinff(”%d\n”,ll+011);的输出结果是( )。
A.20B.22C.022D.0213、下列叙述中正确的是( )。
A.解决同一个问题的不同算法的时间复杂度一般是不同的B.解决同一个问题的不同算法的时间复杂度必定是相同的C.对同一批数据作同一种处理,如果数据存储结构不同,不同算法的时间复杂度肯定相同D.对同一批数据作不同的处理,如果数据存储结构相同,不同算法的时间复杂度肯定相同4、有以下程序:程序运行后的输出结果是( )。
A.yellow:3B.yellow:2C.white:2D.white:35、某二叉树共有530个结点,其中度为2的结点有250个,则度为1的结点数为( )。
A.29B.30C.249D.2516、软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是( )。
A.学籍管理系统B.ERP系统C.C编译程序D.CAl软件7、以下叙述正确的是( )。
A.在c语言中分号是语句的组成部分B.c语言程序由c语句组成,可以省略main函敷C.分号是C语句之间的分隔符D.所有程序行都必须用分号结束8、有以下程序:程序运行后的输出结果是( )。
A.5B.1C.20D.189、以下程序拟实现计算s=1+2*2+3*3+…+n*n+…,直到s>1000为止。
程序运行后,不能得到正确结果,以下修改方案正确的是( )。
A.把while(s>lOOO);改为while(s<=1000);B.把s=1;改为s=0;C.把n=1;改为n=0;D.把n=n+1;改为n=n$n;10、有以下程序:程序运行后的输出结果是( )。
全国计算机等级考试二级C语言上机考试题库及答案

第1套一、填空给定函数的功能是调用fun 函数建立班级通讯录。
通讯录记录每位学生的编号,姓名和电话号码。
班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为答案yfile5.dat的二进制文件中。
答案:1. STYPE 2. FILE3. fp二、修改先将在字符串s中的字符按正序存放到t串中,然后把s 中的字符按逆序连接到t串后面。
答案:1. for(i = 0 ; i < sl ;i++) 2. t[2*sl] =` 0`; 三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。
合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。
*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);第2套一、填空从键盘输入若干行文本(每行不超过80个字符),写到文件答案yfile4.txt中,用-1作为字符串输入结束的标记。
然后将文件的内容读出显示在屏幕上。
文件的读写分别有自定义函数ReadText 和WriteText实现。
答案:*fw str str 二、修改从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位。
答案:long *t sl =sl*10;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。
合并的方式:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。
*c=(b/10)*1000+(a%10)*100+(b%10)*10 +(a/10);第3套一、填空将自然数1~10以及它们的平方根写到名为答案yfile3txt的文本文档中,然后再顺序读出显示在屏幕上。
答案:(1)fp (2)fclose(fp)(3)fname二、修改将n个无序整数从小到大排序。
答案:for(i=j+1;i<n;i++)p=i;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。
全国计算机等级考试无纸化真考题库试卷二级C++(1)

全国计算机等级考试无纸化真考题库试卷(1)二级C++(考试时间l20分钟,满分100分)一、选择题(每小题1分,共40分)(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)对长度为n的线性表排序,在最坏情况下,比较次数不是n(rt一1)/2的排序方法是( )。
A)快速排序B)冒泡排序C)直接插入排序D)堆排序(7)F列关于栈的叙述正确的是( )。
A)栈按“先进先出”组织数据B)栈按“先进后出”组织数据C)只能在栈底插入数据D)不能删除数据(8)在数据库设计中,将E~R图转换成关系数据模型的过程属于( )。
A)需求分析阶段B)概念设计阶段C)逻辑设计阶段D)物理设计阶段(9)有三个关系R、S和T如下.由关系R和s通过运算得到关系T,则所使用的运算为( )。
A)并B)自然连接C)笛卡尔积D)交(10)设有表示学生选课的三张表,学生s(学号,姓名,性别,年龄,身份证号),课程c(课号,课名),选课Sc(学号,课号,成绩),则表Sc的关键字(键或码)为( )。
A)课号,成绩B)学号,成绩C)学号,课号D)学号,姓名,成绩(1I)下列语句中,错误的是( )。
A)const int buffer:256;B)const int temp;C)const double*point;D)const double*rt=new double(5.5);(12)有如下程序:int x=3:do{x-=2;COU[<<X:}while(!(--X));执行这个程序的输出结果是( )。
计算机等级考试(国家)-二级c新增无纸化真题2015年(1)

二级C++新增无纸化真题2015年(1)一、选择题1、下列叙述中正确的是______。
A.算法的空间复杂度与算法所处理的数据存储空间有关B.算法的空间复杂度是指算法程序控制结构的复杂程度C.算法的空间复杂度是指算法程序中指令的条数D.压缩数据存储空间不会降低算法的空间复杂度2、下列各组排序法中,最坏情况下比较次数相同的是______。
A.希尔排序与堆排序 B.简单插入排序与希尔排序C.简单选择排序与堆排序 D.冒泡排序与快速排序3、设栈的存储空间为S(1:50),初始状态为top=51。
现经过一系列正常的入栈与退栈操作后,top=20,则栈中的元素个数为______。
A.31 B.30 C.21 D.204、某二叉树共有400个结点,其中有100个度为1的结点,则该二叉树中的叶子结点数为______。
A.149 B.150C.151 D.不存在这样的二叉树5、下面属于“类-对象”主要特征的是______。
A.对象一致性 B.对象无关性 C.类的多态性 D.类的依赖性6、下面不属于需求分析阶段工作的是______。
A.需求获取 B.可行性研究C.需求分析 D.撰写软件需求规格说明书7、软件生命周期是指______。
A.软件的需求分析、设计与实现B.软件的开发与管理C.软件的实现和维护D.软件产品从提出、实现、使用维护到停止使用退役的过程8、在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是______。
A.内模式 B.用户模式 C.外模式 D.概念模式9、大学中每个年级有多个班,每个班有多名学生,则实体班级和实体学生之间的联系是______。
A.一对多 B.一对一 C.多对一 D.多对多10、有3A.交 B.投影 C.自然连接 D.并11、下列关于new和delete运算符的叙述中,错误的是______。
A.delete运算符用于释放用new分配的内存空间B.new运算符创建类对象时要调用构造函数C.使用new创建数组时可以为数组元素指定初值D.使用new和delete运算符可以动态建立或删除对象12、下列选项中,不属于C++关键字的是______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
全国计算机等级考试无纸化真考题库试卷(5)二级C++(考试时问120分钟,满分100分)一、选择题(每小题1分。
共40分)(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)面向对象方法中,继承是指( )。
A)一组对象所具有的相似性质B)一个对象具有另一个对象的性质C)各对象之间的共同性质D)类之间共享属性和操作的机制(7)层次型、网状型和关系型数据库划分原则是( )。
A)己录长度B)文件的大小C)联系的复杂程度D)数据之间的联系方式(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。
A)一对一B)一对多C)多对多D)多对一(9)数据库设计中反映用户对数据要求的模式是( )。
A)内模式B)概念模式C)外模式D)设计模式(10)有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。
A)自然连接B)差C)交D)并(11)下列符号中能够作为C++标识符的是( )。
A)CoflstB)2aC)_shapeD).Count(12)已知枚举类型声明语句为:enum COl,OR{WHITE,YELLOW,GREEN=5,RED,BLACK=10};则下列说法中错误的是( )。
A)枚举常量YELLOW的值为1B)枚举常量RED的值为6C)枚举常量BLACK的值为10D)枚举常量WHITE的值为1(13)执行下列语句段后,输出字符“*”的个数是( )。
for(int i=50;i>1;i一=2) tout<<’*’:A)24B)25C)26D)50(14)有如下定义:int a[5]={1,3,5,7,9},* P=a;下列表达式中不能得到数值5的是( )。
A)a[2]B)a[3]C)*(P+2)D)+P+4(15)下列语句中错误的是( )。
A)Const int a;B)Const int a=10;C)Const int * point=0;D)Const int * point=new int(10);(16)已知函数FA调用函数FB,若要把这两个函数定义在同一个文件中,则( )。
A)FA必须定义在FB之前B)FB必须定义在FA之前C)若FA定义在FB之后,则FA的原型必须出现在FB的定义之前D)若FB定义在FA之后,则FB的原型必须出现在FA的定义之前(17)下列关于运算符函数的描述中,错误的是( )。
A)运算符函数的名称总是以operator为前缀B)运算符函数的参数可以是对象D)在表达式中使用重载的运算符相当予调用运算符重载函数(18)为了提高函数调用的实际运行速度,可以将较简单的函数定义为( )。
A)内联函数B)重载函数C)递归函数D)函数模板(19)若要对Data类中重载的加法运算符成员函数进行声明,下列选项中正确的是( )。
A)Data+(Data);B)Data operator+(Data);C)Data+operator(Data);D)operator+(Data,Data);(20)已知函数f的原型是void f(int*a,long&b);,变量vl、v2的定义是:int vl;lon9:v2;下列调用语句中正确的是( )。
A)f(vl,&v2);B)f(vl,v2);C)f(&vl,&v2);D)f(&vl,v2);(21)已知Value是一个类,value是Value的一个对象。
下列以非成员函数形式重载的运算符函数原型中,正确的是( )。
A)Value operator+(Value v,int i);B)Value operator+(Value v=value,int i);C)Value operator+(Value v,inl:i=0):D)Value operator+(Value v=vallle,int i=0);(22)下列关于运算符重载的描述中,正确的是( )。
A)运算符重载为成员函数时,若参数表中无参数,重载的是一元运算符B)一元运算符只能作为成员函数重载c)二元运算符重载为非成员函数时,参数表中有一个参数D)c++中可以重载所有的运算符(23)下列有关类成员的叙述中,正确的是( )。
A)友元函数是类的成员函数B)类成员的默认访问权限是私有的c)类成员函数必须声明为公有的D)类的静态数据成员不能是常成员(24)有如下类定义:class Point{private:static int how_many;};___________how_many=0;要初始化Point类的静态成员how_many,下画线处应填入的内容是( )。
A)intB)static intC)int Point::D)static int Point::(25)有如下头文件:int fl();static int f2();class MA{public:int f3();static int f4();};在所描述的函数中,具有隐含的this指针的是( )。
A)flB)f2C)f3D)f4(26)下列有关类继承的叙述中,错误的是( )。
A)继承可以实现软件复用B)虚基类可以解决由多继承产生的二义性问题c)派生类构造函数要负责调用基类的构造函数D)派生类没有继承基类的私有成员(27)在下列关键字中,不能用来表示继承方式的是( )。
A)privateB)staticC)publicD)protected(28)有如下两个类定义:class XX{private:double xl;protected:double x2;public:double x3;};class YY:protected XX{private:double yl;protected:double y2;public:double y3;在类YY中保护成员变量的个数是( )。
A)1B)2C)3D)4(29)有如下类定义:class MyClass{int value;public:MyClass(int n):value(n){}int getValue()const{retum value;}};则类MyClass的构造函数的个数是( )。
A)1个B)2个c)3个D)4个(30)有如下类和对象的定义:class Constants{public:static double getPI(){return 3.1416;}};Constants constants:下列各组语句中,能输出3.1416的是( )。
A)cout<<constants一>getPI();和cout<<Constants::getPI();B)cout<<constants.getPI();和cout<<Constants.getPI();C)cout<<constants一>getPI();和cout<<Constants一>getPI();D)cout<<constants.getPI();和cout<<Constants::getPI();(31)有如下程序:#include<iostream>using namespace std;class VAC{public:intf()const{return 3;}int f(){retum 5;}};int main(){VAC vl;const VAC v2;cout<<vl.f()<<v2.f();return 0;}执行这个程序的输出结果是( )。
A) 53B)35C)55D)33(32)有如下程序:#include<iostream>using namespace std;class MyClass{public:MyClass(int i=0){cout<<1;}MyClass(const MyClass&x){cout<<2;}MyClass&operator=(const MyClass&x){cout<<3;retum$this;} ~MyClass()}cout<<4;}};int main(){MyClass objl(1),obj2(2),obj3(objl);retum 0;{执行这个程序的输出结果是( )。
A)112444B)11114444C)121444D)11314444(33)有如下类声明:class Base{protected:int amount;public:Base(int n=0):amount(n){}int getAmount()const{retum amount;}};class Derived:public Base{protected:int value;public:Derived(int m,int n):value(m),Base(n){}int getData()const{return value+amount;}}:已知x是一个Derived对象,则下列表达式中正确的是( )。
A)x.value+X.getAmount()B)x.getData()一x.getAmount()C)x.getData()一x.amountD)x.value+X.amount(34)有如下程序:#include<iostream>using namespace std;class AA{int k;protected:int n;void setK(int k){this一>k=k;}public:void setN(int n){this一>n=n;}};class BB:public AA{/*类体略*/};int main()}BB X;X.n=1;//1X.setN(2);//2X.k=3;//3X.setK(4);//4return 0;}在标注号码的四条语句中正确的是( )。