2014年无纸化二级C模拟题2-答案
- 格式:doc
- 大小:123.00 KB
- 文档页数:17
计算机二级VisualFoxPro无纸化试题及答案1、下面描述中错误的选项是( )。
A.系统总体构造图支持软件系统的详细设计B.软件设计是将软件需求转换为软件表示的过程C.数据构造与数据库设计是软件设计的任务之一D.PAD图是软件详细设计的表示工具2、语句LIST MEMORY LIKE a*能够显示的变量不包括( )。
A.aB.a1C.ab2D.ba33、执行如下命令的输出结果是( )。
?15%4,15%-4A.3 -1B.3 3C.1 1D.1 -14、一间宿舍可住多个学生,那么实体宿舍和学生之间的联系是( )。
A.一对一B.一对多C.多对一D.多对多5、在以下模式中,能够给出数据库物理存储构造与物理存取方法的是( )。
A.外模式B.内模式C.概念模式D.逻辑模式6、将E-R图转换为关系模式时,实体和联系都可以表示为( )。
A.属性B.键C.关系D.域7、以下关于栈的表达正确的选项是( )。
A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据8、“图书”表中有字符型字段“图书号”。
要求用SQL DELETE命令将图书号以字母“A”开头的图书记录全部删除,正确的命令是( )。
A.DELETE FROM图书FOR图书号LIKE〝A%〞B.DELETE FROM图书WHILE图书号LIKE〝A%〞C.DELETE FROM图书WHERE图书号=〝A*〞D.DELETE FROM图书WHERE图书号LIKE〝A%〞9、在Visual FoxPro中,编译或连编生成的程序文件的扩展名不包括( )。
A.APPB.EXEC.DBCD.FXP10、有三个关系R、S和T如下:那么由关系R和S得到关系T的操作是( )。
A.自然连接B.差C.交D.并11、命令?VARTYPE(TIME())的结果是( )。
A.CB.DC.TD.出错12、在表单中为表格控件指定数据源的属性是( )。
计算机等级考试二级VISUAL BASIC分类真题2014年3月(总分:100.00,做题时间:90分钟)一、选择题(总题数:40,分数:100.00)1.下列叙述中正确的是______。
(分数:2.50)A.有且只有一个根结点的数据结构一定是线性结构B.每一个结点最多有一个前件也最多有一个后件的数据结构一定是线性结构C.有且只有一个根结点的数据结构一定是非线性结构D.有且只有一个根结点的数据结构可能是线性结构,也可能是非线性结构√解析:[解析] 一个非空的数据结构如果满足以下两个条件:有且只有一个根结点;每一个结点最多有一个前件,也最多有一个后件,称为线性结构,故A、B和C选项都错误;不同时满足以上两个条件的数据结构就称为非线性结构,其中树形结构只有一个根结点,D选项正确。
2.某二叉树的前序遍历为ABCD,中序遍历为DCBA,则后序遍历为______。
(分数:2.50)A.在双向链表中,可以从任何一个结点开始直接遍历到所有结点B.在循环链表中,可以从任何一个结点开始直接遍历到所有结点C.在线性单链表中,可以从任何一个结点开始直接遍历到所有结点√D.在二叉链表中,可以从根结点开始遍历到所有结点解析:[解析] 线性单链表就是指线性表的链式存储结构,这种结构只能从一个节点遍历到其后的所有节点,故C选项叙述错误;在单链表的第一个节点前增加一个表头节点,队头指针指向表头节点,所以可以从任何一个节点开始直接遍历到所有节点,最后一个节点的指针域的值由NULL改为指向表头节点,这样的链表称为循环链表;双向链表是指链表节点含有指向前一个节点的指针和指向后一个节点的指针,所以可以从任何一个节点开始直接遍历到所有节点;二叉树链表中节点指针由父节点指向子节点,可以从根节点开始遍历到所有节点,所以选项A、B、D叙述均正确。
3.某二叉树共有13个结点,其中有4个度为1的结点,则叶子结点数为______。
(分数:2.50)A.5 √B.4C.3D.2解析:[解析] 在树结构中,一个节点所拥有的后件个数称为该节点的度。
2014年计算机二级考试真题卷•本卷共分为1大题50小题,作答时刻为180分钟,总分100分,60分及格。
一、单项挑选题(共50题,每题2分。
每题的备选项中,只要一个最契合题意)1.变量x的值为3,y的值为4,履行下列哪个句子后,可输出表达式3+4=7____挑选支A:: Print "x+y=";x+yB:: Print x;"+";y;"=";x+yC:: Print x;"+";"y";"=x+y"D:: Print x;"+";"y=";x+y参考答案:B2.有如下程序#includeusing namespace std;classA{publicstatic int a;void init____{a=1;}A(int a=2){init____;a++;}};int A;a=0A obj;Int main____{cout 《retum0;}A:0B:1C:2D:3参考答案:C3.VB中MDI窗体是指____窗体。
A:单文档界面B:多文档界面C:简略界面D:杂乱界面参考答案:B4.联系数据库中,一个联系代表一个____A:数据表B:查询C:行D:列参考答案:A5.运用____办法可躲藏窗体,但不从内存中开释。
A:HideB:UnLoadC:ShowD:Load参考答案:A6.下列叙说中正确的是____A:一个逻辑数据结构只能有一种存储结构B:数据的逻辑结构归于线性结构,存储结构归于非线性结构C:一个逻辑数据结构能够有多种存储结构,且各种存储结构不影响数据处理的功率D:一个逻辑数据结构能够有多种存储结构,且各种存储结构影响数据处理的功率参考答案:D7.若x=5,y=4 则y*=x+5; y的值为____A:40B:20C:15D:30参考答案:A8.以下程序段的输出成果是____ N=13: a=2 m=n mod 10 Select Case m Case is0: a=1 End select Print aA:-1B:0C:1D:2参考答案:C9.以下选项中不能作为C言语合法常量的是A:’cd’B:0.1e+6C:\a”D:\011”参考答案:A10.要判别在文本框是否按下Enter键,映在文本框的____事情中判别。
3.2 上机操作题部分第1套上机考试试题一、程序填空题请补充函数proc(),该函数的功能是计算下面公式SN的值:例如,当N=20时,SN=29.031674。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:#include<stdlib.}1>#include<conio.h>#include<stdio.h>double proc(int n){double s=1.0,s1=0.0;int k;for(【1】;k<=n;k++){s1=s:【2】;return 【3】;}void main(){int k=0;double sum:system(”CLS”):printf(”\nPlease input N=”):scanf(”%d”,&k);sum=proc(k):printf(”\nS=%Lf”.sum);}二、程序改错题下列给定程序中,函数proc()的功能是根据整型形参n,计算如下公式的值:y=1-1/(22)+1/(33)-1/(44)+…+(-1)(n+1)/(nn)例如,n中的值为10,则应输出0.817962。
请修改程序中的错误,使它能得到正确结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:#include<sldlib.h>#include<conio.h>#include<stdio.h>double proc(int n){double y=1.0;//****found****int j=1;int i;for(i=2;i<=n.;i++){j=-1*j;//****found****y+=1/(i*i);}return(y);}void main(){int n=10:system(”(CLS”):printf(”\nThe result is%lf\n”,proc(n));)三、程序设计题编写一个函数,从传人的M个字符中找出最长的一个字符串,并通过形参指针max传回该串地址(用****作为结束输入的标志)。
福建省高校计算机等级考试二级c(2014年6月题库)一、选择题【01~05】CCABC 【06~10】BADBB 【11~15】BDDBB 【16~20】BDDBA1、C语言程序中的函数是由()组成A、函数名和函数体B、返回值类型和函数名C、函数首部和函数体D、函数名和参数2、下列叙述错误的是()a)C语言程序一行内可以有多条语句b)C语言程序一条语句可以分写在多行c)一个C语言程序可以有多个main()函数d)一个C语言程序只能有一个main()函数3、结构化程序设计的3种基本结构是顺序结构、()和循环结构。
a)选择结构b)逻辑结构c)递归结构d)嵌套结构4、结构化程序设计采用的方法不包括()a)模块化设计b)封装、继承和多态c)自顶向下、逐步细化d)结构化编码5、下列关于C语言程序的叙述错误的是()a)注释内容必须放在/*和*/之间b)一个C语言程序由一个或多个函数组成c)编译时注释部分的错误会被发现d)可以在“{}”内写若干条语句,构成复合语句6、Turbo C中,每个signed short int型数据占用的内存空间为()字节a)8个b)2个c)1个d)4个7、若已定义:int x=2,y=3,z=5;则表达式值为2的是()。
a)z=x,zb)x+y+zc)z=(x,z)d)x=y=z8、下列叙述错误的是()a)程序中算术表达式的书写形式与数学公式完全相同b)赋值运算符的结合方式是“自右向左”c)整数与字符型变量混合运算的结果是整数d)自增和自减运算符可以用于float型变量9、要使语句scanf(“%d,%d”,&m,&n);能够正确接收从键盘输入的值,正确的数据输入形式是()。
a)10 20b)10,20c)1020d)102010、能正确表示数学关系式“k≤0或k≥10”的C语言表达式是()。
a)(k<=0)&&(k>=10)b)(k<=0) || (k>=10)c)(k>=0) || (k<=10)d)(k>=0) && (k<=10)11、若已定义:char c=‟E‟;int a=9;float x=5;则表达式c/x-a的值是()【已知‟A‟的ASCII 码为65】a)13.8b) 4.8c) 4d) 512、()为合法用户标识符。
二级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函数中的字符串,是提示程序员的。
计算机二级考试VISUAL BASIC模拟题二2014年(总分:100.00,做题时间:90分钟)一、选择题(每小题1分,共40小题,共40分)(总题数:40,分数:40.00)1.下列数据结构中,属于非线性结构的是( )。
(分数:1.00)A.循环队列B.带链队列C.二叉树√D.带链栈解析:【解析】线性结构是指数据元素只有一个直接前驱和一个直接后驱,线性表是线性结构,循环队列、带链队列和栈是指对插入和删除有特殊要求的线性表,是线性结构。
而二叉树是非线性结构。
2.下列数据结构中,能够按照“先进后出”原则存取数据的是( )。
(分数:1.00)A.循环队列B.栈√C.队列D.二叉树解析:【解析】栈是一种特殊的线性表,其插入和删除运算都只在线性表的一端进行,而另一端是封闭的。
可以进行插入和删除运算的一端称为栈顶,封闭的一端称为栈底。
栈顶元素是最后被插入的元素,而栈底元素是最后被删除的。
因此,栈是按照先进后出的原则组织数据的。
3.对于循环队列,下列叙述中正确的是( )。
(分数:1.00)A.队头指针是固定不变的B.队头指针一定大于队尾指针C.队头指针一定小于队尾指针D.队头指针可以大于队尾指针,也可以小于队尾指针√解析:【解析】循环队列是把队列的头和尾在逻辑上连接起来,构成一个环。
循环队列中首尾相连,分不清头和尾,此时需要两个指示器分别指向头部和尾部。
插入就在尾部指示器的指示位置处插入,删除就在头部指示器的指示位置删除4.算法的空间复杂度是指( )。
(分数:1.00)A.算法在执行过程中所需要的计算机存储空间√B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的临时工作单元数解析:【解析】一个算法的空间复杂度一般是指执行这个算法所需的存储空间。
一个算法所占用的存储空间包括算法程序所占用的空间、输入的初始数据所占用的存储空间及算法执行过程中所需要的额外空间。
5.软件设计中划分模块的一个准则是( )。
计算机二级《C语言》无纸化考试题及答案2016计算机二级《C语言》无纸化考试题及答案一、选择题(每小题1分,共40分)1、有以下程序:程序运行后的输出结果是()。
A.1,2,6,24,120,B.1,2,3,4,5,C.1,1,1,1,1,D.1,2,4,6,8,2、下列叙述中正确的是()。
A.软件是程序、数据和文档B.软件是程序和数据C.软件是算法和数据结构D.软件是算法和程序3、语句prinff(”%d\n”,strlen(”\t\”\、、n\"\065\08AB”));的输出结果是()。
A.6B.7C.8D.94、函数fun的功能是在a所指的具有n个元素的数组中查找最大值并返回给调用函数,函数不完整。
在if语句下划线处应填人的选项是()。
A.O>sB.*P>*sC.a[p]>a[s]D.p—a>P—s5、若有语句:inta[3][4],(。
P)[4];P=a;,则以下选项中叙述错误的是()。
A.系统将开辟一个名为P的二维数组,“o][o]中的值即为a[o][o]中的值B.P+1代表a[1][0]的地址C.P中将存放a数组的首地址D.P+2代表a数组最后一行的首地址6、有以下程序:程序运行后的输出结果是()。
A.4,5,2,4,1,3,B.4,4,2,2,1,1,C.5,5,3,3,2,2,D.4,4,2,2,1,37、若有定义:inta,b,C;以下程序段的输出结果是()。
a=11;b=3;C=0;pfinff(”%d\n”,c=(a/b,a%B.);A.2B.0C.3D.18、若有定义:doublea,b,c;能正确给a,b,c输入数据的语句是()。
A.seanf(”%lf%1f%1P‘&a,&b,&C.;B.scanf(-t%f%f%f¨,&a,&b。
&C.:C.scanf(”%If%lf%lf’,a,b,C.;D.scanf(”%lf%lf%lf'’,&a,&b,&C.;9、有以下程序段:以下选项中不能正确引用字符串的是()。
2014年计算机等级二级C++考试精选试题及答案以下内容是2014年计算机等级二级C++考试精选试题及答案,供2014各考生备考练习,如需更多考试资讯,敬请关注考试宝典,祝考试顺利!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.上述3个阶段7.数据库管理系统中负责数据模式定义的语有是()。
A.数据定义语言B.数据管理语言C.数据操纵语言D.数据控制语言8.在学生管理的关系数据库中,存取一个学生信息的数据单位是()。
A.文件B.数据库C.字段D.记录9.数据库设计中,用E—R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的()。
A.需求分析阶段B.逻辑设计阶段C.概念设计阶段D.物理设计阶段10.有两个关系R和T如下所示:则由关系R得到关系T的操作是()。
c二级考试试题及答案第一部分:听力理解 (共20小题,每小题1分,共20分)请听下面的对话,根据对话内容选择正确答案。
1. A. In a library. B. In a bookstore. C. In a coffee shop.2. A. At 7:00. B. At 7:30. C. At 8:00.3. A. By bus. B. By subway. C. By taxi.4. A. Two. B. Three. C. Four.5. A. A teacher and a student. B. A doctor and a patient. C. A salesperson and a customer.请听下面的对话,根据对话内容选择正确答案。
6. A. At a hotel. B. At an airport. C. At a train station.7. A. The blue one. B. The black one. C. The red one.8. A. Next Monday. B. Next Thursday. C. Next Sunday.9. A. A police officer. B. A hotel receptionist. C. A taxi driver.10. A. Going to a museum. B. Going to a party. C. Going to a concert.请听下面的对话,根据对话内容选择正确答案。
11. A. At a bookstore. B. At a library. C. At a coffee shop.12. A. By car. B. By bus. C. By subway.13. A. Blue. B. Red. C. White.14. A. Writing a report. B. Reading a book. C. Finishing an assignment.15. A. Two days. B. Three days. C. Four days.请听下面的对话,根据对话内容选择正确答案。
第4章无纸化考试题库答案与解析4.1选择题部分第1套选择题答案与解析1.A。
【解析】C语言是函数式的语言。
它的基本组成单位是函数,在C语言中任何程序都由一个或者多个函数组成。
2.D。
【解析】程序不光,是编写完就结束了,为了测试和维护程序,往往还需其他人阅读和跟踪程序,因此程序设计的风格应该强调简单和清晰,即程序的易读性,“清晰第一、效率第二”。
3.D。
【解析】类(class)描述的是具有相似属性与操作的一组对象,具体对象是类的实例。
4.D。
【解析】所谓二叉树的前序遍历是指先访问根结点,再访问左子树,最后访问右子树,可知选项D正确。
本题中序为DYBEAFCZX,后序为YDEBFZXCA。
5.A。
【解析】线性表的存储通常要用两种存储结构:顺序存储结构和链式存储结构。
6.D。
【解析】算法分析是指对一个算法的运行时间和占用空间做定量的分析,计算相应的数量级,并用时间复杂度和空间复杂度表示。
分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。
7.C。
【解析】数据的存储结构有顺序存储结构和链式存储结构两种。
不同存储结构的数据处理效率不同。
链表采用链式存储结构,元素的物理顺序并不连续,对于插入和删除无须移动元素,很方便,当查找元素时就需要逐个元素查找,因此查找的时间相对更长。
8.C。
【解析】本题考查逻辑与(&&)和逻辑或(||)运算符的使用。
x值在[1,10]之间,C 语言中可以写成“(x>=1)&&(x<=10)”;x值在[100,110]之间,C语言表达式应写成“(x>=100)&&(x<=110)”;[1,10]和[100,110]满足任意条件就可以,所以是逻辑或的关系,因此只要将前两个表达式用逻辑或运算符连接起来即可,所以最后的表达式:(x>=1)&&(x<=10)|| (x>=l00)&&(x<=110)。
9.B。
【解析】C语言中用户标识符不能与C编译系统已经预定义的、具有特殊用途的保留标识符(即关键字)同名。
注意:此答案顺序可能与考题有出入,请大家认真核对选项内容公共基础相关考点第一章数据结构1、算法的有穷性是指A)算法程序所处理的数据量是有限的B)算法只能被有限的用户使用C)算法程序的长度是有限的D)算法程序的运行时间是有限的标准答案:D2、对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是A)冒泡排序B)直接插入排序C)堆排序D)快速排序标准答案:C3、下列关于栈的叙述正确的是A)不能删除数据B)栈按"先进先出"组织数据C)栈按"先进后出"组织数据D)只能在栈底插入数据标准答案:C4、下列叙述中正确的是A)顺序存储结构能存储有序表,链式存储结构不能存储有序表B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C)链式存储结构比顺序存储结构节省存储空间D)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的标准答案:D5、下列叙述中正确的是________。
A)循环队列中元素的个数是由队头指针和队尾指针共同决定B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构标准答案:A6、一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是A)54321EDCBA B)EDCBA54321 C)ABCDE12345 D)12345ABCDE标准答案:B7、在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是A)B)C)D)O(n)标准答案:C8、支持子程序调用的数据结构是A)栈B)队列C)二叉树D)树标准答案:A9、下列叙述中正确的是________。
A)队列是―先进后出‖的线性表B)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构C)栈是―先进先出‖的线性表D)循环队列是非线性结构标准答案:B10、某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是A)8 B)10 C)4 D)6标准答案:D11、下列排序方法中,最坏情况下比较次数最少的是A)简单选择排序B)直接插入排序C)堆排序D)冒泡排序12、下列数据结构中,能够按照―先进后出‖原则存取数据的是A)循环队列B)队列C)二叉树D)栈标准答案:D13、算法的空间复杂度是指A)算法在执行过程中所需要的计算机存储空间B)算法所处理的数据量C)算法在执行过程中所需要的临时工作单元数D)算法程序中的语句或指令条数标准答案:A14、下列数据结构中,属于非线性结构的是A)带链栈B)二叉树C)带链队列D)循环队列标准答案:B15、对于循环队列,下列叙述中正确的是A)队头指针可以大于队尾指针,也可以小于队尾指针B)队头指针是固定不变的C)队头指针一定大于队尾指针D)队头指针一定小于队尾指针标准答案A16、下列叙述中正确的是A)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构C)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的D)以上说法都不对标准答案:B17、下列叙述中正确的是A)栈是一种先进先出的线性表B)队列是一种后进先出的线性表C)栈与队列都是非线性结构D)以上三种说法都不对标准答案:D18、下列关于栈叙述正确的是A)栈顶元素最先能被删除B)栈底元素永远不能被删除C)栈顶元素最后才能被删除D)以上三种说法都不对标准答案:A19、某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为________。
全国计算机等级考试无纸化真考题库试卷(2)二级C++(考试时间l20分钟,满分100分)一、选择题(每小题1分。
共40分)(1)一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。
A)12345ABCDEB)EDCBA54321C)ABCDEl2345D)5432lEDCBA(2)下列叙述中正确的是()。
A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D)循环队列中元素的个数是由队头指针和队尾指针共同决定(3)在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。
A)O(n)B)O(n2)C)O(1092n)C)0(n1092n)(4)下列叙述中正确的是()。
A)顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构c)顺序存储结构能存储有序表,链式存储结构不能存储有序表D)链式存储结构比顺序存储结构节省存储空间(5)数据流图中带有箭头的线段表示的是()。
A)控制流B)事件驱动C)模块调用D)数据流(6)在软件开发中,需求分析阶段可以使用的工具是()。
A)N—s图B)DFD图C)PAD图D)程序流程图(7)在面向对象方法中,不属于“对象”基本特点的是()。
A)一致性B)分类性C)多态性D)标识唯一性(8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是()。
A)一对一B)一对多C)多对一D)多对多(9)在数据管理技术发展的三个阶段中,数据共享最好的是()。
A)人工管理阶段B)文件系统阶段c)数据库系统阶段D)三个阶段相同(10)有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
2014计算机二级《C语言程序设计》全真测试一、选择题(每小题1分,共25分)1下列程序的输出结果是( )。
int a[5]={2,4,6,8,10},*P,* *k;p=a; k=&p;printf("%d",*(p++));printf("%d\n",* *k); A. 4 4B. 2 2C. 2 4D. 4 6本题共1分,参考答案:C2若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )。
A. p+1B. a+1C. a++D. ++p本题共1分,参考答案:C3下面的变量说明中__________是正确的。
A. char:a, b, c;B. char a; b; c;C. char a, b, c;D. char a, b, c本题共1分,参考答案:C4定义如下变量和数组:inti; int x[3][3]={1,2,3,4,5,6,7,8,9};则语句for(i=0;i<3;i++) printf("%d ",x[i][2-i]); 的输出结果是( )。
A. 1 5 9B. 1 4 7C. 3 5 7D. 3 6 9本题共1分,参考答案:C5设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i个元素的地址为( )。
A. P+i*2B. P+(i-1)*2C. P+(i-1)D. P+i本题共1分,参考答案:B6以下对二维数组a进行正确初始化的是( )A. int a[2][3]={{1,2},{3,4},{5,6}};B. inta[ ][3]={1,2,3,4,5,6};C. int a[2][ ]={1,2,3,4,5,6};D. int a[2][ ]={{1,2},{3,4}};本题共1分,参考答案:B7main( ){ int n; ( n=6*4,n+6),n*2; printf(“n=%d\n”,n); }此程序的输出结果是______________.A. 30B. 24C. 60D. 48本题共1分,参考答案:B8C语言中以只读方式打开一个文件应选择_______________参数。
计算机等级考试二级VISUAL BASIC分类真题2014年9月(总分:100.00,做题时间:90分钟)一、选择题(总题数:40,分数:100.00)1.面向对象方法中,实现对象的数据和操作结合于统一体中的是______。
(分数:2.50)A.结合B.封装√C.隐藏D.抽象解析:[解析] 对象的基本特点是:标识唯一性、分类性、多态性、封装性、模块独立性好。
封装是指隐藏对象的属性和实现细节,将数据和操作结合于统一体,仅对外提供访问方式,B选项正确。
2.在进行逻辑设计时,将E-R图中实体之间联系转换为关系数据库的______。
(分数:2.50)A.关系√B.元组C.属性D.属性的值域解析:[解析] E-R图中实体之间的联系转换为关系数据库中的关系,A选项正确。
3.线性表的链式存储结构与顺序存储结构相比,链式存储结构的优点有______。
(分数:2.50)A.节省存储空间B.插入与删除运算效率高√C.便于查找D.排序时减少元素的比较次数解析:[解析] 顺序表和链表的优缺点比较如下表:4.深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为______。
(分数:2.50)A.62B.63 √C.64D.65解析:[解析] 在树结构中,定义一棵树的根结点所在的层次为1,其他结点所在的层次等于它的父结点所在的层次加1,树的最大层次称为树的深度。
完全二叉树指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。
深度为6的满二叉树,结点个数为2 6 -1=63,则第7层共有125-63=62个叶子结点,分别挂在第6层的左边62个结点上,加上第6层的最后1个叶子结点,该完全二叉树共有63个叶子结点,故B选项正确。
5.下列叙述中正确的是______。
(分数:2.50)A.所谓有序表是指在顺序存储空间内连续存放的元素序列B.有序表只能顺序存储在连续的存储空间内C.有序表可以用链接存储方式存储在不连续的存储空间内√D.任何存储方式的有序表均能采用二分法进行查找解析:[解析] “有序”是特指元素按非递减排列,即从小到大排列,但允许相邻元素相等,A选项错误。
全国计算机等级考试二级笔试卷基础知识和C语言程序设计(考试时间120分钟,满分100分)2014年9月一、选择题((1)-(40)每小题1分, (41)-(50)每小题2分, 共60分)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1) 通常所说的主机主要包括A) CPU B) CPU和内存C) CPU、内存与外存 D) CPU、内存与硬盘(2) 在微机系统中,最基本的输入输出模块BIOS存放在A) RAM中B) ROM中C) 硬盘中D) 寄存器中(3) 一个24*24点阵的汉字字形信息所占的字节数为A) 2 B) 24 C) 32 D) 72(4) bit的意思是A) 字B) 字长C) 字节D) 二进制位(5) 某学校的工资管理程序属于A) 系统程序B) 应用程序C) 工具软件D) 文字处理软件(6) 与十六进制数BB等值的十进制数是A) 187 B) 188 C) 185 D) 186(7) 设一张软盘已染上病毒,能清除病毒的措施是A) 删除该软盘上的所有文件B) 格式化该软盘C) 删除该软盘上的所有可执行文件C) 删除该软盘上的所有批处理文件(8) 一张3.5英寸双面高密度软盘片的容量为A) 360KB B) 720KB C) 1.44MB D) 1.2MB(9) 与二进制小数0.1等值的十六进制小数为A) 0.1 B) 0.2 C) 0.4 D) 0.8(10) DOS系统的热启动与冷启动的不同之处为热启动时A) 不检测键盘、处设接口与内存B) 不提示用户输入日期与时间C) 不用装入文件D) 不能从软盘启动(11) 为了将磁盘上的文件K1,K2,K3,依次连接在文件K4的后面,应使用命令A) COPY K1+K2+K3 K4 B) COPY K1+K2+K3+K4C) COPY K1+K2+K3+K4 K4 D) COPY K4+K1+K2+K3(12) 下列文件名中可以作为批处理文件名的是A) AUTOEXC.C B) AUTOEXEC C) ATX.BAT D) AUTO.TXT(13) 要打印输出当前盘的根目录下所有文件与子目录清单,应使用命令A) DIR \ >PRN B) TYPE \ >PRN C) DIR >PRN C) TYPE >PRNC) DIR >PRN D) TYPE >PRN(14) 设可执行文件ABC.EXE所需要的本该由键盘输入的数据已经按格式存放在文件XYZ中,并要求执行结果放在XYZ中输入数据的后面。
1下面不属于对象基本特点的是A 可复用性B 标识唯一性C 封装性D 多态性对象的基本特点:(1)标识惟一性;(2)分类性;(3)多态性;(4)封装性;(5)模块独立性好。
2某系统结构图如下图所示该系统结构图的宽度是A 2B nC 4D 3分析:该图形是一个倒置的树状结构,这是用层次图表示的一种软件结构。
结构图中同一层次模块的最大模块个数称为结构的宽度。
从图中可以看到第3层模块个数最多,即为4。
因此这个系统结构图宽度就是4,另外题目如果问的是深度,深度指的是最大层次数,即为33关系数据模型A 可以表示实体间m:n 联系B 只能表示实体间1:m 联系 功能2.1 功能2.2 功能n.1 功能n.2功能1 功能2 功能n… 某系统C 只能表示实体间1:1联系4在数据库设计中,描述数据间内在语义联系得到E-R图的过程属于A物理设计阶段B概念设计阶段C逻辑设计阶段D需求分析阶段概念设计就是把概念性的东西用图形化表示出来逻辑设计就是把E-R图转换成关系模型数据则是把图形分析出来的联系到数据库中,即设计出表。
5有两个关系R,S如下,由关系R和S得到关系T,则所使用的操作为RB C Da 0 K1SB C Df 3 K2n 2 X1TB C Da 0 K1f 3 K2n 2 X1A自然连接B并C差D交E笛卡尔积6下列叙述中正确的是A带链队列的存储空间可以不连续,且队头指针可以大于也可以小于队尾指针B带链队列的存储空间可以不连续,但队头指针必须大于队尾指针C带链队列的存储空间可以不连续,但队头指针必须小于队尾指针分析:队列是一种特殊的线性结构数据。
循环队列是队列在计算机内顺序存储。
带链队列是队列在计算机内链式存储。
无论哪种存储,队列的运算是队头删除,队尾添加。
这样可能导制队列前越来越空,尾越加越长。
为了改善这种情况,将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间。
7设栈的顺序存储空间为s(0:49),栈底指针bottom=49,栈顶指针top=30(指向栈顶元素)。
则栈中的元素个数为A20B29C19D30【解析】与一般的线性表一样,在程序设计语言中,用一维数组S(1,m)作为栈的顺序存储空间,其中m为栈的最大容量。
通常,栈底指针指向栈空间的栈中的元素个数等于(栈底指针-栈顶指针+1),即49-30+1=20。
8某二叉树的前序序列为ABCDEFG,中序序列为DCBAEFG,则该二叉树的深度(根结点在第1层)为A5B4C3D29下列叙述中正确的是A没有根结点的非空数据结构一定是线性结构B具有两个根结点的数据结构一定是非线性结构C存储空间不连续的数据结构一定是非线性结构D存储空间连续的数据结构一定是线性结构分析:一个数据结构中数据的组合,无论计算机内外,我们根据各数据元素之间前后件的复杂程度,分线性结构和非线性结构。
线性结构的特点:有且只有一个根结点,前后件是一对一的关系。
比如生活中我们说一年四季的数据结构是说春夏秋冬,那我们不会说秋夏春冬(也不顺),这时春就是启点,即根结点,春过了只是夏,夏进了只是秋,即前后件只是一对一关系。
不可越级。
又比如说一年12个月的数据结构也是典型的线性结构。
而家庭成员关系比如父亲儿子女儿就不会是一对一的前后件关系,这里父亲是根结点,父亲之后有两个后件,即儿子和女儿,这种一对多的关系就是非线性结构。
数据存储结构在计算机内有2种形式:顺序与链式。
顺序特点是:所有元素所占存储空间连续,且各元素在存储空间的物理位置与逻辑位置必须一致。
(即在外是春夏秋冬的顺序,在计算机内就也保持春夏秋冬的顺序位置)而链式特点为:存储空间可以不连续或连续,物理逻辑顺序可以不一致。
无论这个数据结构是线性结构还是非线性结构,都有可能在计算机内顺序存储,也有可能是链式存储。
不固定存储,数据好比房间的物品,各人喜好各人不同放置。
10下面不能作为软件需求分析工具的是A PAD图B 数据字典(DD)C 判定树D 数据流图(DFD图)需求分析阶段用的工具有:数据流图(DFD图)、数据字典、判定树、判定表。
11若有定义和语句:Int a ,b;Scanf(“%d,%d,”,&a,&b);以下选项中的输入数据,不能把值3赋给变量a、5赋给变量b的是A3,5,B3,5C3 ,5D3,5,412c语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是A在标识符中大写字母和小写字母被认为是相同的字符B用户标识符可以由字母和数字任意顺序组成C关键字可用作用户标识符,但失去原有含义D预定义标识符可用作用户标识符,但失去原有含义解析:C语言允许把预定义标识符重新定义另作他用,但这将失去预先定义的愿意。
用户标识符需要遵守标识符明明规则,C语言标识符中,大写字母和小写字母被认为是两个不同的字符。
关键字不能另作他用。
13以下选项中合法的常量是A 123E 0.2B 9 9 9C 2.7eD 0Xab选项中 E 后面的指数必须为整型数据0xab 表示的是十六进制常量14以下叙述中错误的是A 常量可以用一个符号名来代表B 数值型常量有正值和负值的区分C 常量是在程序运行过程中值不能被改变的量D 定义符号常量必须用类型名来设定常量的类型【解析】C语言中,常常用一个标识符来代表一个常量,称为符号常量。
符号常量在使用之前要先定义,定义格式如下:#define<符号常量名>(常量)其中,<符号常量名)用标识符,习惯上用大写字母,<常量>可以是数字常量,也可以是字符15以下叙述中正确的是A 每个后缀为.C的C语言源程序都应该包含一个main函数B 在C语言程序中,只有main函数才可单独进行编译C 在C语言程序中,main函数必须放在其他函数的最前面D 每个后缀为.C的C语言源程序都可以单独进行编译【解析】每一个C 语言的文件或函数都可以单独编译,但只有main 函数的才可以执行。
C语言是一种成功的系统描述语言,具有良好的移植性,每个后缀为.C的C语言源程序都可以单独进行编译。
16C语言主要是借助以下哪种手段来实现程序模块化A 定义常量和外部变量B 使用丰富的数据类型C 使用三种基本结构语句D 定义函数【解析】C语言用函数实现软件的模块化设计。
17有以下程序段scanf(“%d%d%d”,&a,&b,&c);if(a<b) a=b;if(a<c) a=c:printf(“%d\n”,a);该程序段的功能是A 输出a,b,c中的最大值B 输出a,b,c中值相等的数值C 输出a,b,c中的最小值D 输出a的原始值18有以下程序#include <stdio.h>int ml(int x,int y){ return x<=y ? x :y; }int m2(int x,int y){ return x<=y ? y :x;}int fun(int a,int b){ return a+b; }main(){ int x=2,y=3,z=1;Printf(“%d\n”, fun(m1(x,y),m2(y,z)));}程序的运行结果是A 3B 4C 6D 5m1(x,y)--- m1(2,3) ---2<=3 ----return x 2m2(y,z)--- m2(3,1) ---3<=1 ----return x 3fun(2,3) 2+3=519有以下程序#include <stdio.h>main(){int x=0,y=6;do{ while(--y) x++;}While(y--);printf(“%d,%d\n”,x,y);}程序的运行结果是A 5,-1B 6,0C 6,-1D 5,0第一次外循环内循环 while(--y) y=6-1=5 5非0 x++ x=0+1=1while(--y) y=5-1=4 4非0 x++ x=1+1=2while(--y) y=4-1=3 3非0 x++ x=2+1=3while(--y) y=3-1=2 2非0 x++ x=3+1=4while(--y) y=2-1=1 1非0 x++ x=4+1=5while(--y) y=1-1=0 0 退出内循环y=0 退出外循环20以下程序段中,不能实现条件“如果a<b则x=10,否则x=-10“的是A if(a<b) x=10;If(b<a) x=-10;B x=(a>=b)? -10:10;C x=-10;if(a<b) x=10;D if(a<b) x=10;else x=-10;A a=b未考虑21有以下程序#include<stdio.h>main(){ char *s=”120119110”;Int n0,n1,n2,nn,I;n0=n1=n2=nn=i=0;do{switch(s[i++]){ default : nn++;case‘0’: n0++;case‘1’: n1++;case‘2’: n2++;}}While(s[i]);Printf(“n0=%d,n1=%d,n2=%d,nn=%d\n”,n0,n1,n2,nn);}程序运行结果是A n0=2,n1=5,n2=1,nn=1B n0=4,n1=8,n2=9,nn=1C n0=2,n1=7,n2=10,nn=1D n0=3,n1=8,n2=9,nn=1char *s=”120119110”;s[0]=1 s[1]=2 s[2]=0 s[3]=1 s[4]=1 s[5]=9 s[6]=1 s[7]=1 s[8]=0 switch(s[i++]) switch(s[0]) switch(1)case‘1’: n1++;n1=0+1=1case‘2’: n2++; n2=0+1=2由于没有break,执行case 1 后,仍然要做case 2利用排除法,9 属于其他 default : nn++; nn=0+1=1s[2]=0 s[5]=9 s[8]=0 case‘0’: n0++; n0=0+1+1+1=322 以下能够实现计算5!的程序段是A int fac=1,k=1;do{k++;fac*=k;} while(k<=5);B int fac=0,k=1;do {fac*=k;k++;} while(k<5);C int fac=1,k=0;Do{fac*=k;k++;} while(k<5);D int fac=1,k=0;Do{k++;fac*=k;} while(k<5);23 若要使用C数学库中的sin函数,需要在源程序的头部加上#include<math.h> 关于引用数学库,以下叙述正确的是A将数学库中sin函数的源程序插入到引用处,以便进行编译链接B将数学库中sin函数链接到编译生成的可执行文件中,以便能正确运行C通过引用math.h文件,说明sin函数的参数个数和类型,以及函数返回值类型D实际上,不引用math.h文件也能正确调用sin函数24 有以下程序#include<stdio.h>Int *f(int *s,int *t){ if (*s<*t)s=t;return s;}main(){ int i=3,j=5,*p=&i,*q=&j,*r;r=f(p,q);printf(“%d,%d,%d,%d,%d\n”,i,j,*p,*q,*r);}程序的运行结果是A 5,5,5,5,5B 5,3,3,3,5C 3,5,3,5,5D 3,5,5,5,525以下关于地址和指针的叙述中正确的是A 可以取变量的地址赋值给同类型的指针变量B 所有指针变量如果未赋初值,则自动赋空值NULLC 可以取一个指针变量的地址赋给本指针变量,这样就使得指针变量指向自身D 可以取常量的地址赋值给同类型的指针变量26有以下程序#include <stdio.h>void fun(int a[],int n ){ int i,j=0,k=n-1,b[10];for(i=0;i<n/2;i++){ b[i]=a[j];b[k]=a[j+1];j+=2;k--;}for (i=0;i<n;i++)a[i]=b[i];}main(){ int c[10]={10,9,8,7,6,5,4,3,2,1},i; fun (c,10);for (i=0;i<10;i++)printf("%d,",c[i]);printf("\n");}程序运行结果是A 10,8,6,4,2,1,3,5,7,9,B 1,2,3,4,5,6,7,8,9,10,C 1,3,5,7,9,10,8,6,4,2,D 10,9,8,7,6,5,4,3,2,1,27 有以下程序#include <stdio.h>int k=5;void f(int *s){*s=k;}main(){ int m=3,*p=&m;f(p);printf("%d,%d",m,*p);}程序运行结果是A 5,5B 5,3C 3,5D 3,328 有以下程序#include<stdio.h>#define N 4void fun(int a[][N]){ int b[N][N],i,j;for(i=0;i<N;i++)for(j=0;j<N;j++)b[i][j]=a[N-1-j][i];for(i=0;i<N;i++)for(j=0;j<N;j++)a[i][j]=b[i][j];}main(){ int x[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j=0; fun(x);for(i=0;i<N;i++)printf("%d,",x[i][j]);printf("\n");}程序的运行结果是A 4,7,10,13,B 1,5,9,13,C 13,10,7,4,D 1,6,11,16,29有以下程序#include<stdio.h>int fun(int x){ int p;if(x==0 || x==1)return(3);p=x-fun(x-2);return(p);}main(){ printf("%d\n",fun(9));}程序运行后的输出结果是A 4B 9C 5D 730 以下选项中,能正确进行字符串赋值的是A char s[4][5]={“ABCDE”};B char *s; gets(s);C char *s=”ABCDE”;D char s[5]={‘A’,’B’,’C’,’D’,’E’};31 有以下程序#include<stdio.h>void fun(char **p){ int i;for(i=0;i<4;i++) printf("%s",p[i]);}main(){ char *s[6]={"ABCD","EFGH","IJKL","MNOP","QRST","UVWX"};fun(s); printf("\n");}程序运行后的输出结果是A AEIMB ABCDEFGHIJKLC ABCDD ABCDEFGHIJKLMNOP评析:p[O]指向"ABCD"的首地址;p[1]指向"EFGH"的首地址;p[2]指向"IJKL"的首地址,依此类推。