2010年3月全国计算机等级考试二级C笔试试卷
全国计算机等级考试二级VISUALBASIC真题2010年3月_真题(含答案与解析)-交互
全国计算机等级考试二级VISUAL BASIC真题2010年3月(总分115, 做题时间120分钟)一、选择题(每小题2分,共70分) 下列各题四个选项中,有一个是正确的,请选择正确答案。
1.下列叙述中正确的是SSS_SINGLE_SELA 对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB 对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C 对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D 对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n log2n)该问题分值: 2答案:A2.算法的时间复杂度是指SSS_SINGLE_SELA 算法的执行时间B 算法所处理的数据量C 算法程序中的语句或指令条数D 算法在执行过程中所需要的基本运算次数该问题分值: 2答案:D3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是SSS_SINGLE_SELA 编辑软件B 操作系统C 教务管理系统D 浏览器该问题分值: 2答案:B4.软件(程序)调试的任务是SSS_SINGLE_SELA 诊断和改正程序中的错误B 尽可能多地发现程序中的错误C 发现并改正程序中的所有错误D 确定程序中错误的性质该问题分值: 2答案:A5.数据流程图(DFD图)是SSS_SINGLE_SELA 软件概要设计的工具B 软件详细设计的工具C 结构化方法的需求分析工具D 面向对象方法的需求分析工具该问题分值: 2答案:C6.软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于SSS_SINGLE_SELA 定义阶段B 开发阶段C 维护阶段D 上述三个阶段该问题分值: 2答案:B7.数据库管理系统中负责数据模式定义的语言是SSS_SINGLE_SELA 数据定义语言B 数据管理语言C 数据操纵语言D 数据控制语言该问题分值: 2答案:A8.在学生管理的关系数据库中,存取一个学生信息的数据单位是SSS_SINGLE_SELA 文件B 数据库C 字段D 记录该问题分值: 2答案:D9.数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的SSS_SINGLE_SELA 需求分析阶段B 逻辑设计阶段C 概念设计阶段D 物理设计阶段该问题分值: 2答案:A10.有两个关系R和T如下:则由关系R得到关系T的操作是SSS_SINGLE_SELA 选择B 投影C 交D 并该问题分值: 2答案:A11.在VB集成环境中要结束一个正在运行的工程,可单击工具栏上的一个按钮,这个按钮是SSS_SIMPLE_SINA B C D该问题分值: 2答案:D12.设x是整型变量,与函数Ⅱf(x>0,-x,x)有相同结果的代数式是SSS_SINGLE_SELA |x|B -|x|C xD -x该问题分值: 2答案:B13.设窗体文件中有下面的事件过程:Private Sub Command1_Click()Dim sa%=100Print aEnd Sub其中变量a和s的数据类型分别是SSS_SINGLE_SELA 整型,整型B 变体型,变体型C 整型,变体型D 变体型,整型该问题分值: 2答案:C14.下面哪个属性肯定不是框架控件的属性SSS_SINGLE_SELA TextB CaptionC LeftD Enabled该问题分值: 2答案:A15.下面不能在信息框中输出“VB”的是SSS_SINGLE_SELA MsgBox "VB"B x=MsgBox("VB")C MsgBox("VB")D Call MsgBox "VB"该问题分值: 2答案:D16.窗体上有一个名称为Option1的单选按钮数组,程序运行时,当单击某个单选按钮时,会调用下面的事件过程Private Sub Option1_C1ick(Index As Integer)…End Sub下面关于此过程的参数Index的叙述中正确的是SSS_SINGLE_SELA Index为1表示单选按钮被选中,为O表示未选中B Index的值可正可负C Index的值用来区分哪个单选按钮被选中D Index表示数组中单选按钮的数量该问题分值: 2答案:C17.设窗体中有一个文本框Text1,若在程序中执行了Text1.SetFocus,则触发SSS_SINGLE_SELA Text1的SetFocus事件B Text1的GotFocus事件C Text1的LostFocus事件D 窗体的GotFocus事件该问题分值: 2答案:B18.VB中有3个键盘事件:KeyPress、KeyDown、KeyUp,若光标在Text1文本框中,则每输入一个字母SSS_SINGLE_SELA 这3个事件都会触发B 只触发KeyPress事件C 只触发KeyDown、KeyUp事件D 不触发其中任何一个事件该问题分值: 2答案:A19.下面关于标准模块的叙述中错误的是SSS_SINGLE_SELA 标准模块中可以声明全局变量B 标准模块中可以包含一个Sub Main过程,但此过程不能被设置为启动过程C 标准模块中可以包含一些Public过程D 一个工程中可以含有多个标准模块该问题分值: 2答案:B20.设窗体的名称为Form1,标题为Win,则窗体的MouseDown事件过程的过程名是SSS_SINGLE_SELA Form1_MouseDownB Win_MouseDownC Form_MouseDownD MouseDown_Form1该问题分值: 2答案:A21.下面正确使用动态数组的是SSS_SINGLE_SELA Dim arr() As Integer …ReDim arr(3,5)B Dim arr() As Integer …ReDim arr(50)As StringC Dim arr() …ReDim arr(50) As IntegerD Dim arr(50) As Integer …ReDim arr(20)该问题分值: 2答案:A22.下面是求最大公约数的函数的首部Function gcd(ByVal x As Integer, ByVal y As Integer) As Integer 若要输出8、12、16这3个数的最大公约数,下面正确的语句是SSS_SINGLE_SELA Print gcd(8,12),gcd(12,16),gcd(16,8)B Print gcd(8,12,16)C Print gcd(8),gcd(12),gcd(16)D Print gcd(8,gcd(12,16))该问题分值: 2答案:D23.有下面的程序段,其功能是按图1所示的规律输出数据Dim a(3,5) As IntegerFor i=1 To 3For j=1 To 5A(i,j)=i+jPrint a(i,j);NextPrintNext若要按图2所示的规律继续输出数据,则接在上述程序段后面的程序段应该是SSS_SINGLE_SELA For i=1 To 5 For j=1 To 3 Print a(j,i); Next Print NextB For i=1 To 3 For j=1 To 5 Print a(j,i); Next Print NextC For j=1 To 5 For i=1 To 3 Print a(j,i); Next Print NextD For i=1 To 5 For j=1 To 3 Print a(i,j); Next Print Next该问题分值: 2答案:A24.窗体上有一个Text1文本框,一个Command1命令按钮,并有以下程序Private Sub Commandl_Click()Dim nIf Text1.Text<>"23456" Thenn=n+1Print "口令输入错误" & n & "次"End IfEnd Sub希望程序运行时得到左图所示的效果,即:输入口令,单击“确认口令”命令按钮,若输入的口令不是“123456”,则在窗体上显示输入错误口令的次数。
2010年3月全国计算机二级C语言笔试真题及答案(word版)带解析-推荐下载
D、不知道 a 的值,不能确定
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术通关,1系电过,力管根保线据护敷生高设产中技工资术艺料0不高试仅中卷可资配以料置解试技决卷术吊要是顶求指层,机配对组置电在不气进规设行范备继高进电中行保资空护料载高试与中卷带资问负料题荷试2下卷2,高总而中体且资配可料置保试时障卷,各调需类控要管试在路验最习;大题对限到设度位备内。进来在行确管调保路整机敷使组设其高过在中程正资1常料中工试,况卷要下安加与全强过,看度并22工且22作尽22下可22都能22可地护以缩1关正小于常故管工障路作高高;中中对资资于料料继试试电卷卷保破连护坏接进范管行围口整,处核或理对者高定对中值某资,些料审异试核常卷与高弯校中扁对资度图料固纸试定,卷盒编工位写况置复进.杂行保设自护备动层与处防装理腐置,跨高尤接中其地资要线料避弯试免曲卷错半调误径试高标方中高案资等,料,编试要5写、卷求重电保技要气护术设设装交备备置底4高调、动。中试电作管资高气,线料中课并敷3试资件且、设卷料中拒管技试试调绝路术验卷试动敷中方技作设包案术,技含以来术线及避槽系免、统不管启必架动要等方高多案中项;资方对料式整试,套卷为启突解动然决过停高程机中中。语高因文中此电资,气料电课试力件卷高中电中管气资壁设料薄备试、进卷接行保口调护不试装严工置等作调问并试题且技,进术合行,理过要利关求用运电管行力线高保敷中护设资装技料置术试做。卷到线技准缆术确敷指灵设导活原。。则对对:于于在调差分试动线过保盒程护处中装,高置当中高不资中同料资电试料压卷试回技卷路术调交问试叉题技时,术,作是应为指采调发用试电金人机属员一隔,变板需压进要器行在组隔事在开前发处掌生理握内;图部同纸故一资障线料时槽、,内设需,备要强制进电造行回厂外路家部须出电同具源时高高切中中断资资习料料题试试电卷卷源试切,验除线报从缆告而敷与采设相用完关高毕技中,术资要资料进料试行,卷检并主查且要和了保检解护测现装处场置理设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
全国计算机等级考试二级C++真题2010年3月
全国计算机等级考试二级C++真题2010年3月(总分:100.00,做题时间:120分钟)一、选择题(每小题2分,共70分) (总题数:35,分数:70.00)1.下列叙述中正确的是(分数:2.00)A.对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n √B.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n log2n)解析:2.算法的时间复杂度是指(分数:2.00)A.算法的执行时间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数√解析:3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是(分数:2.00)A.编辑软件B.操作系统√C.教务管理系统D.浏览器解析:4.软件(程序)调试的任务是(分数:2.00)A.诊断和改正程序中的错误√B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质解析:5.数据流程图(DFD图)是(分数:2.00)A.软件概要设计的工具B.软件详细设计的工具C.结构化方法的需求分析工具√D.面向对象方法的需求分析工具解析:6.软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于(分数:2.00)A.定义阶段B.开发阶段√C.维护阶段D.上述三个阶段解析:7.数据库管理系统中负责数据模式定义的语言是(分数:2.00)A.数据定义语言√B.数据管理语言C.数据操纵语言D.数据控制语言解析:8.在学生管理的关系数据库中,存取一个学生信息的数据单位是(分数:2.00)A.文件B.数据库C.字段D.记录√解析:9.数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的(分数:2.00)A.需求分析阶段B.逻辑设计阶段C.概念设计阶段√D.物理设计阶段解析:10.有两个关系R和T如下:则由关系R得到关系T的操作是(分数:2.00)A.选择√B.投影C.交D.并解析:11.下列关于函数的描述中,错误的是(分数:2.00)A.函数可以没有返回值B.函数可以没有参数C.函数可以是一个类的成员D.函数不能被定义为模板√解析:12.若MyClass是一个类名,且有如下语句序列MyClass c1,*c2; MyClass *c3=new MyClass; MyClass &c4=c1; 上面的语句序列所定义的类对象的个数是(分数:2.00)A.1B.2C.3 √D.4解析:13.下列关于继承方式的描述中,错误的是(分数:2.00)A.如果不显式地指定继承方式,缺省的继承方式是私有(private)B.采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员C.采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员D.采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员√解析:14.将前缀运算符“--”重载为非成员函数,下列原型中,能正确用于类中说明的是(分数:2.00)A.Decr& operator --(int);B.Decr operator --( Decr&,int);C.friend Decr& operator --(Decr&); √D.frlend Decr operator --(Decr&,int);解析:15.若MyTemp是一个只有一个虚拟类型参数的类模板,且有如下语句序列 MyTempp2; MyTempp3[2]; 编译系统在处理上面的语句序列时,所生成的模板MyTemp的实例的个数是(分数:2.00)A.1B.2C.3 √D.0解析:16.在C++中,cin是个(分数:2.00)A.类B.对象√C.模板D.函数解析:17.在下列字符中,不允许作为C++标识符的是(分数:2.00)A.bB.BC._D.2 √解析:18.下列叙述中,错误的是(分数:2.00)A.false是一个逻辑型常量B."b"是一个字符型常量√C.365是一个int常量D.3.1415926是一个double常量解析:19.若x和y是程序中的两个整型变量,则下列if语句中正确的是(分数:2.00)A.if(x==0) y=1; else y=2; √B.if(x==0) then y=1 else y=2;C.if(x==0) y=1 else y=2;D.if x==0 y=1; else y=2;解析:20.要定义整型数组x,使之包括初值为O的三个元素,下列语句中错误的是(分数:2.00)A.int x[3]={0,0,0};B.int x[]={0}; √C.static int x[3]={0};D.int x[]={0,0,0};解析:21.关于函数中的,下列表述中错误的是(分数:2.00)A.中有可能包含关键字intB.中有可能包含自定义标识符C.中有可能包含字符*D.中可能包含[] √解析:22.要定义一个引用变量p,使之引用类MyClass的一个对象,正确的定义语句是(分数:2.00)A.MyClass p=MyClass;B.MyClass p=new MyClass;C.MyClass &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中保护成员变量的个数是(分数:2.00)A.1B.2C.3 √D.4解析:24.下列关于运算符重载的描述中,错误的是(分数:2.00)A.可以通过运算符重载在C++中创建新的运算符√B.赋值运算符只能重载为成员函数C.运算符函数重载为类的成员函数时,第一操作数是该类对象D.重载类型转换运算符时不需要声明返回类型解析:25.下列关于类模板的描述中,错误的是(分数:2.00)A.类模板的成员函数都是模板函数B.可以为类模板参数设置默认值C.类模板描述了一组类D.类模板中只允许有一个类型参数√解析:26.下列控制格式输入输出的操作符中,能够设置浮点数精度的是(分数:2.00)A.setprecision √B.setwC.setfillD.showpoint解析:27.下列程序段中包含4个函数,其中具有隐含this指针的是 int fun1(); class Test{ public: int fun2(); friend int fun3(); static int fun4(); };(分数:2.00)A.fun1B.fun2 √C.fun3D.fun4解析:28.有如下程序#include using namespace std; class Test{ public: Test(){ } Test(const Test &t) {cout<(分数:2.00)A.无输出B.1C.11 √D.111解析:29.有如下程序#include using namespace std; class A{ public: A(int i=0):r1(i) { } void print() {cout<<'E’<<R1<<'-';}< p> void print() const {cout<<'C'<<R1*R1<<'-';}< p> void print(int x) {cout <<'P'<<R1*R1*R1<<'-';}< p> private: int r1; }; int main() { A a1; const A a2(4); a1.print(2); a1.print(); return 0; } 运行时的输出结果是(分数:2.00)A.P8-E4B.P8-C16-C.P0-E4-D.P0-C16- √解析:30.下列代码声明了3个类class Person{}; class Student:public Person{}; class Undergraduate:Student{}; 下列关于这些类之间关系的描述中,错误的是(分数:2.00)A.类Person是类Undergraduate的基类B.类Undergraduate从类Student公有继承√C.类Student是类Person的派生类D.类Undergraduate是类Person的派生类解析:31.有如下程序 #include using namespace std; Class Base{ public: Base(int x=0):valB(x) {cout<<VALB;}< p> ~Base() {cout<<VALB;}< p> private: int valB; }; class Derived:public Base{ public: Derived(int x=0,int y=0):Base(x),valD(y){cout<<VALD;}< p> ~Derived() {cout<<VALD;}< p> private: int valD; }; int main(){ Derived obj12(2,3); retuen 0; } 运行时的输出结果是(分数:2.00)A.2332 √B.2323C.3232D.3223解析:32.下面是类Shape的定义:class Shape{ public: virtual void Draw()=0; }; 下列关于Shape类的描述中,正确的是(分数:2.00)A.类Shape是虚基类B.类Shape是抽象类C.类Shape中的Draw函数声明有误D.语句“Shape s;”能够建立Shape的一个对象s √解析:33.将运算符“+”重载为非成员函数,下列原型声明中,错误的是(分数:2.00)A.MyClock operator + (MyClock,long);B.MyClock operator + (MyClock,MyClock);C.MyClock operator + (long,long); √D.MyClock operator + (long,MyClock);解析:34.打开文件时可单独或组合使用下列文件打开模式①ios_base::app ②ios_base::binary③ios_base::in ④ios_base::out 若要以二进制读方式打开一个文件,需使用的文件打开模式为(分数:2.00)A.①③B.①④C.②③D.②④√解析:35.有如下程序: #include using namespace std; Class B{ public: B(int xx):x(xx) {++cout; x+=10;} virtual void show() const {cout<<COUNT<<'_'<<X<<ENDL;}< p> protected: static int count; private: int x; }; class D:public B{ public: D(int xx,int yy):B(xx),y(yy) {++count; y+=100;} virtual void show() const {cout<<COUNT<<'_'<<Y<<ENDL;}< p> private: int y; }; int B::count=0; int main(){ B *ptr=new D(10,20); ptr->show(); delete ptr; return 0; } 运行时的输出结果是(分数:2.00)A.1_120B.2_120 √C.1_20D.2_20解析:二、填空题(每空2分,共30分) (总题数:15,分数:30.00)36.个队列的初始状态为空。
2008到2010年计算机二级C语言笔试真题和答案
2010/3月全国计算机二级C 语言一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题1分,共70分) (1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log 2n )D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log 2n )(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)维护阶段 C)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言 B)数据管理语言 C)数据操纵语言 D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件 B)数据库 C)字段 D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的 A)需求分析阶段 B)逻辑设计阶段 C)概念设计阶段 D)物理设计阶段(10)有两个关系R和T如下:R T则由关系R得到关系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)_1 B)AaBc C)a_b D)a--b(14)若有定义:doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是 A B Ca1 2 b2 2 c3 2 d 3 2 A B C c 3 2 d 3 2A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#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)1234B)12C)12D)12334(16)以下关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==I)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是A)switch(a)B)switch(a==1)C)switch(a)D)switch(a==1){case1:a=b;break;{case0:a=b;break;{default:a++;break;{case1:a=b;break;default:a++;} case1:a++;} case1:a=b;} case0:a++;}(19)有如下嵌套的if语句(20)有以下程序if(a<b) #include<stdio.h>if(a<c) k=a; main()else k=c; {int i,j,m=1;if(b<c) k=b; for(i=1;i<3;i++)else k=c;以下选项中与上述if语句等价的语句是{for(j=3;j>0;j--)A)k=(a<b)?a:b;k=(b<c)?b:c; {if(i+j>3) break;B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);m*=i*j;}}C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);printf(“m=%d\n”,m);}程序运行后的输出结果是D)k=(a<b)?a:b;k=(a<c)?a:c;A)m=6B)m=2C)m=4D)m=5(21)有以下程序(22)有以下程序,其中k的初值为八进制数#include<stdio.h> #include<stdio.h>main() main(){int a=1,b=2; {int k=011;for(;a<8;a++) { b+=a;a+=2;} printf(“%d\n”,k++);}printf(“%d,%d\n”,a,b);}程序运行后的输出结果是程序运行后的输出结果是A)9,18B)8,11A)12B)11C)10D)9C)7,11D)10,14(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)一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返同到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008 ;D)#define N 2008int num[N];int num[N];(26)有以下程序#include<stdio.h>void 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(“%c,%c\n”,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的具有三个元素的指针数组pt C)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元索a[3]的是A)(*s)[3] B)*(s+3)C)*s[3] D)*s+3(29)有以下程序(30)有以下程序#include<stdio.h> #include<stdio.h>main() main(){int a[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0; {int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=1;i<3;i++) s=s+a[b[i]]; for(i=1;i<3;i++)printf(“%d\n”,s);}程序运行后的输出结果是for(j=1;j<=1;j++) t+=b[i][b[j][i]];A)6B)10printf(“%d\n”,t);}程序运行后的输出结果是C)11D)15A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是A)55B)105C)107D)58(32)有以下程序(33)有以下程序#include<stdio.h> #include<stdio.h>#define N 8 int f(int t[],int n);void fun(int *x,int i) main(){*x=*x+i;} {int a[4]={1,2,3,4},s; main() s=f(a,4);printf(“%d\n”,s);}{int a[N]={1,2,3,4,5,6,7,8},i; int f(int t[],int n)fun(a,2); for(i=1;i<N/2;i++) {if (n>0)return t[n-1]+f(t,n-1);{printf(“%d”,a[i]);} else return 0;}printf(“\n”);}程序运行后的输山结果是程序运行后的输出结果是A)1313B)2234A)4B)10C)3234D)1234C)14D)6(34)有以下程序(35)有以下程序#include<stdio.h> #include<stdio.h>int fun( ) #define SUB(a) (a)-(a){static int x=1; main()x*=2;return x;} {int a=2,b=3,c=5,d;main() d=SUB(a+b)*c;{int i,s=1; printf(“%d\n”,d);}for(i=1;i<=2;i++) s=fun(); 程序运行后的输山结果是printf(“%d\n”,s);}程序运行后的输出结果是A)0B)-12A)0B)1C)-20D)10C)4D)8(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)有以下程序(38)有以下定义和语句#include<stdio.h> struct workers#include<string.h> {int num;char name[20];char c;struct A struct{int a;char b[10];double c;}; {int day;int month;int year;}s}void f(struct At); s truct workers w,*pw;main() pw=&w;能给w中year成员赋1980的语句是{struct Aa={1001,“ZhangDa”,1098.0};f(a); A)printf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);} B)w.year=1980;void f(struct At) C)pw->year=1980;{t.a=1002;strcpy(t.b,“ChangRong”);t.c=1202.0;}输出结果是D)w.s.year=1980;A)1001,ZhangDa,1098.0B)1002,ChangRong,1202.0C)1001,ChangRong,10980D)1002,ZhangDa,1202.0(39)有以下程序(40)有以下程序#include<stdio.h> #include<stdio.h>main() main(){int a=2,b=a,c=2; {FILE *fp;char str[10]; printf(“%d\n”,a/b&c); fp=open(“myfile.dat”,“w”);} fputs(“abc”,pf);close(pf);程序运行后的输出结果是fp=open(“myfile.dat”,“a+”);A)0B)1fprintf(pf,“%d”,28); rewind(pf);C)2D)3fscanf(pf,“%s”,str);puts(str);close(pf);}程序运行后的输出结果是A)abcB)28cC)abc28D)因类型不一致而出错二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
2010年3月计算机等级考试二级C笔试试题解析
2010年3月计算机等级考试二级C笔试试题解析
计算机等级考试二级C语言已开考多次,出题方式基本趋向成熟,现在出题一般都是按模板进行,即每次考试同一个阶段的试卷内容基本对应着相同的考查知识点。
本文将对此次考试二级C语言考试的考题知识点分布进行分析总结。
具体见表1所示:表1 2010年3月计算机等级考试二级C语言考试考题知识分布
在本次考试中,主要有以下几个突出的特点:
(1)本次考试中没有考查偏概念性的程序设计基础的知识点,这是历次考试中几乎都没有出现的情况,而对数组与指针及其它一些偏应用方面的内容考查的分值明显增多,这说明等考中二级C语言的考试越来越注重编程等应用型知识点。
(2)从大的分析角度来看,试题知道点分布情况还是非常稳定的,且重点突出,其中数组与指针、函数及公共基础知识占到整体比例的近70%。
2010年3月全国计算机等级考试二级C语言笔试试题(含参考答案)
#include<stdio.h>
#define N 8
void 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=0; i<N/2); i++)
{ printf("%d",a[i]);}
C)概念设计阶段D)物理设计阶段
(10)有两个关系R和T如下:
R T
A
B
C
a
1
2
b
2
2
c
3
2
d
3
2
A
B
C
c
3
2
d
3
2
则由关系R得到关系T的操作是
选择B)投影C)交D)并
(11)以下叙述正确的是
A)C语言程序是由过程和函数组成的
B)C语言函数可以嵌套调用,例如:fun(fun(x))
C)C语言函数不可以单独编译
void f(struct A t);
main()
{struct A a={1001,"ZhangDa",1098.0};
f(a); pringt("%d,%s,%6.1f\n",a.a,a.b,a.c);
}
void f(struct A t)
{t.a=1002;strcpy(t.b,"ChangRong");t.c=1202.0;}
}
程序运行后的输出结果是
A) 6 B)10 C) 11 D)15
30)有以下程序
#include<stdio.h>
2010年3月国家二级(VisualBasic)笔试真题试卷(题后含答案及解析)
2010年3月国家二级(VisualBasic)笔试真题试卷(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.下列叙述中正确的是A.对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2) C.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D.对长度为n的有序链表进行对分查找,最坏情况F需要的比较次数为(nlog2n)正确答案:A解析:对长度为n的有序链表进行查找,最坏情况是从最小值开始查找最大值(或从最大值开始查找最小值),这个过程需要比较的次数为n,故选项A)正确。
对分查找只能针对随机存取的有序表进行,而有序链表只能进行顺序存取,不能进行随机存取,在有序链表上不能进行对分查找,故B)、C)、D)选项都错误。
2.算法的时间复杂度是指A.算法的执行时间B.算法所处理的数据量C.算法程序中的语句或指令条数D.算法在执行过程中所需要的基本运算次数正确答案:D解析:算法的时间复杂度足指算法需要消耗的时间资源,是独立于机器的,选项D)正确;相同的算法在不同的机器上运行时间可能不同,选项A)错误;算法所处理的数据量与算法无关,选项B)错误;程序的长短与程序执行时需要消耗的时间资源没有必然的关系,比如一个条件语句可以很长,但只需判断一次,而一个循环语句可能只有几行,但可以执行很多次,故选项C)错误。
3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是A.编辑软件B.操作系统C.教务管理系统D.浏览器正确答案:B解析:编辑软件、教务管理软件属于应用软件,操作系统属于系统软件,浏览器属于支撑软件,故本题答案选B。
4.软件(程序)调试的任务是A.诊断和改正程序中的错误B.尽可能多地发现程序中的错误C.发现并改正程序中的所有错误D.确定程序中错误的性质正确答案:A解析:软件调试的任务是诊断和改正程序中的错误,本题正确答案为A)。
国家计算机二级C语言历年真题及答案
全国计算机等级考试二级笔试试卷C语言程序设计(考试时间90分钟,满分100分)一、选择题((1)—(10)、(21)—(40)每题2分,(11)—(20)每题1分,共70分)(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) 可封装D) 自顶向下C) 模块化D) 逐步求精(7)软件详细设计产生的图如下:该图是A) N-S图B) PAD图C) 程序流程图D) E-R图(8)数据库管理系统是A)操作系统的一部分B) 在操作系统支持下的系统软件C) 一种编译系统D) 一种操作系统(9)在E-R图中,用来表示实体联系的图形是A) 椭圆图B) 矩形C) 菱形D) 三角形(10)有三个关系R,S和T如下:其中关系T由关系R和S通过某种操作得到,该操作为A) 选择B) 投影C) 交D) 并(11)以下叙述中正确的是A)程序设计的任务就是编写程序代码并上机调试B)程序设计的任务就是确定所用数据结构C)程序设计的任务就是确定所用算法D)以上三种说法都不完整(12)以下选项中,能用作用户标识符的是A)voidB)8_8C)_0_D)unsigned(13)阅读以下程序#includemain(){ int case; float printF;printf(“请输入2个数:”);scanf(“%d %f”,&case,&pjrintF);printf(“%d %f\n”,case,printF);}该程序编译时产生错误,其出错原因是A)定义语句出错,case是关键字,不能用作用户自定义标识符B)定义语句出错,printF不能用作用户自定义标识符C)定义语句无错,scanf不能作为输入函数使用D)定义语句无错,printf不能输出case的值(14)表达式:(int)((double)9/2)-(9)%2的值是A)0B)3C)4D)5(15)若有定义语句:int x=10;,则表达式x-=x+x的值为A)-20B)-10C)0D)10(16)有以下程序#includemain(){ int a=1,b=0;printf(“%d,”,b=a+b);printf(“%d\n”,a=2*b);}程序运行后的输出结果是A)0,0C)3,2D)1,217)设有定义:int a=1,b=2,c=3;,以下语句中执行效果与其它三个不同的是A)if(a>b) c=a,a=b,b=c;B)if(a>b) {c=a,a=b,b=c;}C)if(a>b) c=a;a=b;b=c;D)if(a>b) {c=a;a=b;b=c;}(18)有以下程序#includemain(){ int c=0,k;for (k=1;k<3;k++)switch (k){ default: c+=kcase 2: c++;break;case 4: c+=2;break;}printf(“%d\n”,c);}程序运行后的输出结果是A)3B)5C)7D)9(19)以下程序段中,与语句:k=a>b?(b>c?1:0):0;功能相同的是A)if((a>b)&&(b>c)) k=1;else k=0;B)if((a>b)||(b>c) k=1;else k=0;C)if(a<=b) k=0;else if(b<=c) k=1;D)if(a>b) k=1;else if(b>c) k=1;else k=0;20)有以下程序#include{ char s[]={“012xy”};int i,n=0;for(i=0;s[i]!=0;i++)if(s[i]>=’a’&&s[i]<=’z’) n++;printf(“%d\n”,n);}程序运行后的输出结果是A)0B)2C)3D)5(21)有以下程序#includemain(){ int n=2,k=0;while(k++&&n++>2);printf(“%d %d\n”,k,n);}程序运行后的输出结果是A)0 2B)1 3C)5 7D)1 2(22)有以下定义语句,编译时会出现编译错误的是A)char a=’a’;B)char a=’\n’;C)char a=’aa’;D)char a=’\x2d’;(23)有以下程序#includemain(){ char c1,c2;c1=’A’+’8’-‘4’;c2=’A’+’8’-‘5’;printf(“%c,%d\n”,c1,c2);}已知字母A的ASCII码为65,程序运行后的输出结果是A)E,68C)E,DD)输出无定值(24)有以下程序#includevoid fun(int p){ int d=2;p=d++; printf(“%d”,p);}main(){ int a=1;fun(a); printf(“%d\n”,a);}程序运行后的输出结果是A)32B)12C)21D)22(25)以下函数findmax拟实现在数组中查找最大值并作为函数值返回,但程序中有错导致不能实现预定功能#define MIN -2147483647int findmax (int x[],int n){ int i,max;for(i=0;i<N;I++)< p="" />{ max=MIN;if(maxreturn max;}造成错误的原因是A)定义语句int i,max;中max未赋初值B)赋值语句max=MIN;中,不应给max赋MIN值C)语句if(maxD)赋值语句max=MIN;放错了位置(26)有以下程序#includemain(){ int m=1,n=2,*p=&m,*q=&n,*r;r=p;p=q;q=r;printf(“%d,%d,%d,%d\n”,m,n,*p,*q);}程序运行后的输出结果是A)1,2,1,2B)1,2,2,1C)2,1,2,1D)2,1,1,2(27)若有定义语句:int a[4][10],*p,*q[4];且0≤i<4,则错误的赋值是A)p=aB)q[i]=a[i]C)p=a[i]D)p=&a[2][1](28)有以下程序#include#includemain(){ char str[ ][20]={“One*World”, “One*Dream!”},*p=str[1];printf(“%d,”,strlen(p));printf(“%s\n”,p);}程序运行后的输出结果是A)9,One*WorldB)9,One*DreamC)10,One*DreamD)10,One*World(29)有以下程序#includemain(){ int a[ ]={2,3,5,4},i;for(i=0;i<4;i++)switch(i%2){ case 0:switch(a[i]%2){case 0:a[i]++;break;case 1:a[i]--;}break;case 1:a[i[=0;}for(i=0;i<4;i++) printf(“%d”,a[i]); printf(“\n”);}A)3 3 4 4B)2 0 5 0C)3 0 4 0D)0 3 0 4(30)有以下程序#include#includemain(){ char a[10]=”abcd”;printf(“%d,%d\n”,strlen(a),sizeof(a));}程序运行后的输出结果是A)7,4B)4,10C)8,8D)10,10(31)下面是有关C语言字符数组的描述,其中错误的是A)不可以用赋值语句给字符数组名赋字符串B)可以用输入语句把字符串整体输入给字符数组C)字符数组中的内容不一定是字符串D)字符数组只能存放字符串(32)下列函数的功能是fun(char * a,char * b){ while((*b=*a)!=’\0’) {a++,b++;} }A)将a所指字符串赋给b所指空间B)使指针b指向a所指字符串C)将a所指字符串和b所指字符串进行比较D)检查a和b所指字符串中是否有’\0’(33)设有以下函数void fun(int n,char * s) {……}则下面对函数指针的定义和赋值均是正确的是A)void (*pf)(); pf=fun;B)viod *pf(); pf=fun;C)void *pf(); *pf=fun;D)void (*pf)(int,char);pf=&fun;(34)有以下程序#includeint f(int n);main(){ int a=3,s;s=f(a);s=s+f(a);printf(“%d\n”,s);}int f(int n){ static int a=1;n+=a++;return n;}程序运行以后的输出结果是A)7B)8C)9D)10(35)有以下程序#include#define f(x) x*x*xmain(){ int a=3,s,t;s=f(a+1);t=f((a+1));printf(“%d,%d\n’,s,t);}程序运行后的输出结果是A)10,64B)10,10C)64,10D)64,64(36)下面结构体的定义语句中,错误的是A)struct ord {int x;int y;int z;}; struct ord a;B)struct ord {int x;int y;int z;} struct ord a;C)struct ord {int x;int y;int z;} a;D)struct {int x;int y;int z;} a;(37)设有定义:char *c;,以下选项中能够使字符型指针c正确指向一个字符串的是A)char str[ ]=”string”;c=str;B)scanf(“%s”,c);C)c=getchar();D)*c=”string”;(38)有以下程序#include#includestruct A{ int a; char b[10]; double c;};struct A f(struct A t);main(){ struct A a={1001,”ZhangDa”,1098.0};a=f(a);jprintf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);}struct A f(struct A t)( t.a=1002;strcpy(t.b,”ChangRong”);t.c=1202.0;return t; )程序运行后的输出结果是A)1001,ZhangDa,1098.0B)1001,ZhangDa,1202.0C)1001,ChangRong,1098.0D)1001,ChangRong,1202.0(39)若有以下程序段int r=8;printf(“%d\n”,r>>1);输出结果是A)16B)8C)4D)2(40)下列关于C语言文件的叙述中正确的是A)文件由一系列数据依次排列组成,只能构成二进制文件B)文件由结构序列组成,可以构成二进制文件或文本文件C)文件由数据序列组成,可以构成二进制文件或文本文件D)文件由字符序列组成,其类型只能是文本文件二、填空题(每空2分,共30分)(1)某二叉树有5个度为2的结点以及3个度为1的结点,则该二叉树中共有【1】个结点。
2010年3月2C笔试真题及答案
2010年3月全国计算机等级考试二级C笔试题一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n log2n)(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如下:则由关系R得到关系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%c ”,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)?b:c);C)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=%d ",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,%d ",a,b); }程序运行后的输出结果是A)9,18B)8,11C)7,11D)10,14(22)有以下程序,其中k的初值为八进制数#includemain(){int k=011;printf("%d ",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)一个自定义函数中必须有一条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,%e ",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("%d ", s);}程序运行后的输出结果是A)6C)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("%d ",t);}程序运行后的输出结果是A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!",*s2=" 123\\";printf("%d %d ", strlen(s1),strlen(s2));则输出结果是A)5 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++;i<=??){printf("%d",a[i]);}printf(" ");}程序运行后的输出结果是A)1313B)2234C)3234D)1234(33)有以下程序int f(int t[],int n);main{ int a[4]={1,2,3,4},s;s=f(a,4); printf("%d ",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;}{int i,s=1,for(i=1;i<=2;i++) s=fun(); printf("%d ",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("%d ",d);}程序运行后的输出结果是A)0B)-12D)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.1f ",a.a,a.b,a.c); }void f(struct A t){ t.a=1002; strcpy(t.b,"ChangRong");t.c=1202.0;} 程序运行后的输出结果是A)1001,zhangDa,1098.0B)1002,changRong,1202.0C)1001,ehangRong,1098.OD)1002,ZhangDa,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("%d ",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)一个队列的初始状态为空。
2010年3月全国计算机等级考试二级笔试试卷
2010年3月全国计算机等级考试二级笔试试卷Visual FoxPro数据库程序设计一、选择题(每题2分,共70分)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如下:则有关系R得到关系T的操作是。
A) 选择 B)投影 C)交 D)并11)在Visual FoxPro中,编译后的程序文件的扩展名为。
2010年3月全国计算机等级考试二级笔试试卷
2010年3月全国计算机等级考试二级笔试试卷Visual FoxPro数据库程序设计(考试时间90分钟,满分100分)一、选择题(每小题2分,共70分下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。
请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(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 如下:则由关系R 得到关系T 的操作是A )选择B )投影C )交D )并(11)在Visual FoxPro 中,编译后的程序文件的扩展名为A )PRGB )EXEC )DBCD )FXP(12)假设表文件TEXT.DBF 已经在当前工作区打开,要修改其结构,可使用命令A )MODI STRUB )MODI COMM TESTC )MODI DBFD )MODI TYPETEXT(13)为当前表中所有学生的总分增加10分,可以使用的命令是A )CHANGE 总分 WITH 总分+10B )REPLACE 总分 WITH 总分+10C)CHANGE ALL 总分WITH 总分+10 D)REPLACE ALL 总分WITH 总分+10(14)在Visual FoxPro中,下面关于属性、事件、方法叙述错误的是A)属性用于描述对象的状态B)方法用于表示对象的行为C)事件代码也可以象方法一样被显式调用D)基于同一个类产生的两个对象的属性不能分别设置自己的属性值(15)有如下赋值语句,结果为“大家好”的表达式是a="你好"b="大家"A)b+AT(a,1) B)b+RIGHT(a,1) C)b+LEFT(a,3,4) D)b+RIGHT(a,2)(16)在Visual FoxPro中,“表”是指A)报表B)关系C)表格控件D)表单(17)在下面的Visual FoxPro表达式中,运算结果为逻辑真的是A)EMPTY(.NULL.) B)LIKE('xy?','xyz')C)AT('xy','abcxyz') D)ISNULL(SPACE(0))(18)以下关于视图的描述正确的是A)视图和表一样包含数据B)视图物理上不包含数据C)视图定义保存在命令文件中D)视图定义保存在视图文件中(19)以下关于关系的说法正确的是A)列的次序非常重要B)行的次序非常重要C)列的次序无关紧要D)关键字必须指定为第一列(20)报表的数据源可以是A)表或视图B)表或查询C)表、查询或视图 D)表或其他报表(21)在表单中为表格控件指定数据源的属性是A)Datasource B)RecordSource C)DataFrom D)RecordFrom (22)如果指定参照完整性的删除规则为“级联”,则当删除父表中的记录时A)系统自动备份父表中被删除记录到一个新表中B)若子表中有相关记录,则禁止删除父表中记录C)会自动删除子表中所有相关记录D)不作参照完整性检查,删除父表记录与子表无关(23)为了在报表中打印当前时间,这是应该插入一个A)表达式控件B)域控件C)标签控件D)文本控件(24)以下关于查询的描述正确的是A)不能根据自由表建立查询B)只能根据自由表建立查询C)只能根据数据库表建立查询D)可以根据数据库表和自由表建立查询(25)SQL语言的更新命令的关键词是A)INSERT B)UPDATE C)CREATE D)SELECT (26)将当前表单从内存释放的正确语句是A)ThisForm.Close B)ThisForm.Clear C)ThisForm.Release D)ThisForm.Refresh(27)假设职员表已在当前工作区打开,其当前记录的“姓名”字段值为“李彤”(C 型字段)。
2008至2010年计算机国家二级C语言考级真题及答案
2010年3月全国计算机二级C语言考试真题一、选择题((1)~(10)、(21)~(40)每题2分,(11)~(20)每题1分,共70分)(1)下列叙述中正确的是A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)(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)维护阶段C)上述三个阶段(7)数据库管理系统中负责数据模式定义的语言是A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言(8)在学生管理的关系数据库中,存取一个学生信息的数据单位是A)文件B)数据库C)字段D)记录(9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的A)需求分析阶段B)逻辑设计阶段C)概念设计阶段D)物理设计阶段(10)有两个关系R和T如下:R T则由关系R得到关系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)若有定义:doublea=22;inti=0,k=18;,则不符合C语言规定的赋值语句是A)a=a++,i++;B)i=(a+k)<=(i+k);C)i=a%11;D)i=!a;(15)有以下程序#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)1234B)12C)12D)12334(16)以下关于C语言数据类型使用的叙述中错误的是A)若要准确无误差的表示自然数,应使用整数类型B)若要保存带有多位小数的数据,应使用双精度类型C)若要处理如“人员信息”等含有不同类型的相关数据,应自定义结构体类型D)若只处理“真”和“假”两种逻辑值,应使用逻辑类型(17)若a是数值类型,则逻辑表达式(a==I)||(a!=1)的值是A)1B)0C)2D)不知道a的值,不能确定(18)以下选项中与if(a==1)a=b;else a++;语句功能不同的switch语句是A)switch(a)B)switch(a==1)C)switch(a)D)switch(a==1){case1:a=b;break;{case0:a=b;break;{default:a++;break;{case1:a=b;break;default:a++;} case1:a++;} case1:a=b;} case0:a++;}(19)有如下嵌套的if语句(20)有以下程序if(a<b) #include<stdio.h>if(a<c) k=a; main()else k=c; {int i,j,m=1;if(b<c) k=b; for(i=1;i<3;i++)else k=c;以下选项中与上述if语句等价的语句是{for(j=3;j>0;j--)A)k=(a<b)?a:b;k=(b<c)?b:c; {if(i+j>3) break;B)k=(a<b)?((b<c)?a:b)((b>c)?b:c);m*=i*j;}}C)k=(a<b)?((a<c)?a:c)((b<c)?b:c);printf(“m=%d\n”,m);}程序运行后的输出结果是D)k=(a<b)?a:b;k=(a<c)?a:c;A)m=6B)m=2C)m=4D)m=5(21)有以下程序(22)有以下程序,其中k的初值为八进制数#include<stdio.h> #include<stdio.h>main() main(){int a=1,b=2; {int k=011;for(;a<8;a++) { b+=a;a+=2;} printf(“%d\n”,k++);}printf(“%d,%d\n”,a,b);}程序运行后的输出结果是程序运行后的输出结果是A)9,18B)8,11A)12B)11C)10D)9C)7,11D)10,14(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)一个自定义函数中必须有一条return语句B)一个自定义函数中可以根据不同情况设置多条return语句C)定义成void类型的函数中可以有带返回值的return语句D)没有return语句的自定义函数在执行结束时不能返同到调用处(25)下列选项中,能正确定义数组的语句是A)int num[0..2008];B)int num[];C)int N=2008 ;D)#define N 2008int num[N];int num[N];(26)有以下程序#include<stdio.h>void 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(“%c,%c\n”,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的具有三个元素的指针数组pt C)定义了一个名为*pt、具有三个元素的整型数组D)定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组(28)设有定义double a[10],*s=a;,以下能够代表数组元索a[3]的是A)(*s)[3] B) *(s+3)C)*s[3] D) *s+3(29)有以下程序(30)有以下程序#include<stdio.h> #include<stdio.h>main() main(){int a[5]={1,2,3,4,5},b[5]={0,2,1,3,0},i,s=0; {int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;for(i=1;i<3;i++) s=s+a[b[i]]; for(i=1;i<3;i++)printf(“%d\n”,s);}程序运行后的输出结果是for(j=1;j<=1;j++) t+=b[i][b[j][i]];A)6B)10printf(“%d\n”,t);}程序运行后的输出结果是C)11D)15A)1B)3C)4D)9(31)若有以下定义和语句char s1[10]="abcd!", s2="\n123\\";printf("%d%d\n",strlen(s1),strlen(s2));则输出结果是A)55B)105C)107D)58(32)有以下程序(33)有以下程序#include<stdio.h> #include<stdio.h>#define N 8 int f(int t[],int n);void fun(int *x,int i) main(){*x=*x+i;} {int a[4]={1,2,3,4},s; main() s=f(a,4);printf(“%d\n”,s);}{int a[N]={1,2,3,4,5,6,7,8},i; int f(int t[],int n)fun(a,2); for(i=1;i<N/2;i++) {if (n>0)return t[n-1]+f(t,n-1);{printf(“%d”,a[i]);} else return 0;}printf(“\n”);}程序运行后的输山结果是程序运行后的输出结果是A)1313B)2234A)4B)10C)3234D)1234C)14D)6(34)有以下程序(35)有以下程序#include<stdio.h> #include<stdio.h>int fun( ) #define SUB(a) (a)-(a){static int x=1; main()x*=2;return x;} {int a=2,b=3,c=5,d;main() d=SUB(a+b)*c;{int i,s=1; printf(“%d\n”,d);}for(i=1;i<=2;i++) s=fun(); 程序运行后的输山结果是printf(“%d\n”,s);}程序运行后的输出结果是A)0B)-12A)0B)1C)-20D)10C)4D)8(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)有以下程序(38)有以下定义和语句#include<stdio.h> struct workers#include<string.h> {int num;char name[20];char c;struct A struct{int a;char b[10];double c;}; {int day;int month;int year;}s}void f(struct At); s truct workers w,*pw;main() pw=&w;能给w中year成员赋1980的语句是{struct Aa={1001,“ZhangDa”,1098.0};f(a); A) pw.year=1980;printf(“%d,%s,%6.1f\n”,a.a,a.b,a.c);} B)w.year=1980;void f(struct At) C)pw->year=1980;{t.a=1002;strcpy(t.b,“ChangRong”);t.c=1202.0;}输出结果是D)w.s.year=1980;A)1001,ZhangDa,1098.0B)1002,ChangRong,1202.0C)1001,ChangRong,10980D)1002,ZhangDa,1202.0(39)有以下程序(40)有以下程序#include<stdio.h> #include<stdio.h>main() main(){int a=2,b=a,c=2; {FILE *fp;char str[10];printf(“%d\n”,a/b&c); fp=open(“myfile.dat”,“w”);} fputs(“abc”,pf);close(pf);程序运行后的输出结果是fp=open(“myfile.dat”,“a+”);A)0B)1fprintf(pf,“%d”,28); rewind(pf);C)2D)3fscanf(pf,“%s”,str);puts(str);close(pf);}程序运行后的输出结果是A)abcB)28cC)abc28D)因类型不一致而出错二、填空题(每空2分,共30分)请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
2010年3月-2012年3月全国计算机二级C语言真题及详细解析
2012年3月全国计算机二级C语言笔试真题及详细解析(考试时间90分钟,满分100分)一、选择题1、下列叙述中正确的是:A、循环队列是队列的一种顺序存储结构B、循环队列是队列的一种链式存储结构C、循环队列是非线性结构D、循环队列是一直逻辑结构2、下列叙述中正确的是A、栈是一种先进先出的线性表B、队列是一种后进先出的线性表C、栈和队列都是非线性结构D、以上三种说法都不对3、一棵二叉树共有25个节点,其中5个时子节点,那么度为1的节点数为A、4B、6C、10D、164、在下列模式中,能够给出数据库物理存储结构与物理存取方法的是A、内模式B、外模式C、概念模式D、逻辑模式5、在满足实体完整性约束的条件下A、一个关系中可以没有候选关键词B、一个关系中只能有一个候选关键词C、一个关系中必须有多个候选关键词D、一个关系中应该有一个或者多个候选关键词6、有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A、自然连接B、并C、差D、交7、软件生命周期中的活动不包括A、软件维护B、市场调研C、软件测试D、需求分析8、下面不属于需求分析阶段任务的是A、确定软件系统的功能需求B、确定软件系统的系统的系能需求B、制定软件集成测试计划D、需求规格说明书审评9、在黑盒测试方式中,设计测试用例的主要根据是A、程序外部功能B、程序内部逻辑C、程序数据结构D、程序流程图10、在软件设计中不使用的工具是A、系统结构图B、程序流程图C、PAD图D、数据流图(DFD图)11、针对简单程序设计,以下叙述的实施步骤正确的是A、确定算法和数据结构、编码、调试、整理文档B、编码、确定算法和数据结构、调试、整理文档C、整理文档、确定算法和数据结构、编码、调试D、确定算法和数据结构、调试、编码、整理文档12、关于C语言中数的表示,以下叙述正确的是A、只有整型数在允许范围内能精确无误的表示,实型数会有误差B、只要在在允许范围内整型和实型都能精确表示C、只有实型数在允许范围内能精确无误的表示,整型数会有误差D、只有八进制表示的数在不会有误差13、以下关于算法叙述错误的是A、算法可以用伪代码、流程图等多种形式来描述B、一个正确的算法必须有输入C、一个正确的算法必须有输出D、用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码14、以下叙述错误的是A、一个C程序可以包含多个不同名的函数B、一个C程序只能有一个主函数C、C程序在书写时,有严格的缩进要求,否则不能编译通过D、C程序的主函数必须用main作为函数名15、设有以下语句Char ch1,ch2, scanf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符A和B,正确的输入形式应该是A、A和B之间用逗号间隔B、A和B之间不能有任何间隔符C、A和B之间可以用回车间隔D、A和B之间用空格间隔16、以下选项中非法的字符常量是A、’\102’B、’\65’C、’\xff’D、’\019’17、有以下程序#include <sthio.h>Main(){Int A=0,B=0,C=0;C=(A-=A-5);(A=B,B+=4);Printf(“%d, %d, %d\n”,A,B,C)}程序运行后输出的结果是A 0,4,5B 4,4,5C 4,4,4D 0,0,018、设变量均已正确定义并且赋值,以下与其他三组输出结构不同的一组语句是A、x++; printf((“%d\n”,x);B、n=++x; printf((“%d\n”,n);C、++x; printf((“%d\n”,x);D、n=x++; printf((“%d\n”,n);19、以下选项中,能表示逻辑值“假”的是A 1B 0.000001C 0D 100.020、有以下程序#include <sthio.h>Main(){ int a;Scanf(“%d”,&a);If(a++<9) printf((“%d\n”,a);Else printf((“%d\n”,a--);}程序运行时键盘输入9<回车>,则输出的结构是A、10 B 11 C 9 D 821、有以下程序#include <sthio.h>Main(){int s=0,n;For (n=0;n<3;n<++){switch(s){ case 0;Case 1;s+=1;Case 2;s+=2;break;Case 3;s+3;Case 4;s+=4;}printf((“%d\n”,s);}}程序运行后的结果是A 1,2,4B 1,3,6C 3,10,14D 3,6,1022、若k是int类型变量,且有以下for语句For(k=-1;k<0;k++)printf(****\n”);下面关于语句执行情况的叙述中正确的是A、循环体执行一次B、循环体执行两次C、循环体一次也不执行D、构成无限循环23、有以下程序#include <sthio.h>Main(){char A,B,C;B=’1’;C=’A’For(A=0;A<6;A++){if(A%2) putchar(B+A);Else putchar(C+A);}}程序运行后输出的结果是A 1B3D5FB ABCDFEC A2C4E6D 12345624、设有如下定义语句Int m[ ]={2,4,6,8},*k=m;以下选项中,表达式的值为6的是A *(k+2)B k+2C *k+2D *k+=225、fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。
2010年3月全国计算机等级考试二级C++笔试试题
2010年3月全国计算机等级考试二级C++笔试试题(每小题2分,共70分)(1)(2)(3)(3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是()。
A: 编辑软件B: 操作系统C: 教务管理系统D: 浏览器(4)(5)(6)(7)(8)(9)(10)(11)下列关于函数描述中,错误的是A: 函数可以没有返回值B: 函数可以没有参数C: 函数可以是一个类的成员D: 函数不能被定义为模板(12)(13)(14)(15)(16)对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是( )。
A: 快速排序B: 冒泡排序C: 直接插入排序D: 堆排序答案:D(17)在下列字符中,不允许作为C++标识符的是A.bB.BC._D.2(18)(19)(20)(21)(22)(23)(24)(25)(26)(27)(28)(29)(30)(31)(32)(33)(34)(35)(每空2分,共30分)(36)答案:解析:暂无(37)答案:解析:暂无(38)答案:解析:暂无(39)答案:解析:暂无(40)解析:暂无(41)答案:解析:暂无(42)答案:解析:暂无(43)答案:解析:暂无(44)答案:解析:暂无(45)解析:暂无(46)答案:解析:暂无(47)答案:解析:暂无(48)答案:解析:暂无(49)下面的函数定义是某函数模板能够生成的数字实例int square(int n) {return n*n;}double square(double n) {return n*n;}由此可知,该函数模板的定义是。
答案:解析:暂无。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(61) 数据结构中,与所使用的计算机无关的是数据的(C)
A. 存储结构 B. 物理结构 C. 逻辑结构 D. 物理和存储结构
(62) 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是(D)A. ABCED B. DBCEA C. CDABE D. DCBEA
(33) 设有下列二叉树:图见书P46对此二叉树中序遍历的结果(B)
A. ABCDEF B. DBEAFC C. ABDECF D. DEBFCA
(34) 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(D) 注:P56
A. 调用语句 B. 命令 C. 口令 D. 消息
(35) 检查软件产品是否符合需求定义的过程称为(A) 注:P95
A. 详细设计 B. 需求分析 C. 总体设计 D. 编程调试
(48) 软件调试的目的是(B)????注:与软件测试要对比着复习
A.发现错误 B.改正错误 C.改善软件的性能 D.挖掘软件的潜能
(49) 按条件f对关系R进行选择,其关系代数表达式为(C)
A. R|X|R B. R|X|Rf C. бf(R) D. ∏f(R)
(54) 在下列几种排序方法中,要求内存量最大的是(D)?? 注:要牢记,书中没有提到。
A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序
(55) 在设计程序时,应采纳的原则之一是(A) 注:和设计风格有关
A. 程序结构应有助于读者理解 B. 不限制goto语句的使用C. 减少或取消注解行 D. 程序越短越好
一、选择题
(1) 下面叙述正确的是(C)
A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对
(2) 以下数据结构中不属于线性数据结构的是(C)
A. 队列 B. 线性表 C. 二叉树 D. 栈
2010年3月全国计算机等级考试二级笔试试卷
C语言程序设计
(24) 对建立良好的程序设计风格,下面描述正确的是(A) 注P48
A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法C. 充分考虑程序的执行效率 D. 程序的注释可有可无
(25) 下面对对象概念描述错误的是(A) 注:P55
A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性
(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A) 注:P67
A. 控制流 B. 加工 C. 数据存储 D. 源和潭
(17) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及(B) 注:P66
A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理
(29) 用树形结构来表示实体之间联系的模型称为(B)
A. 关系模型 B. 层次模型 C. 网状模型 D. 数据模型
(30) 关系数据库管理系统能实现的专门关系运算包括(B)
A. 排序、索引、统计 B. 选择、投影、连接C. 关联、更新、排序 D. 显示、打印、制表
(3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得
A. 8 B. 16 C. 32 D. 15
(4) 下面描述中,符合结构化程序设计风格的是(A)
A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句
A. 元组 B. 字段 C. 属性 D. 码
(20) 数据库设计包括两个方面的设计内容,它们是(A)
A. 概念设计和逻辑设计 B. 模式设计和内模式设计C. 内模式设计和物理设计 D. 结构特性设计和行为特性设计
(21) 下列叙述中正确的是(A)
A. 线性表是线性结构 B. 栈与队列是非线性结构C. 线性链表是非线性结构 D. 二叉树是线性结构
(38) 索引属于(B)A. 模式 B. 内模式 C. 外模式 D. 概念模式
(39) 在关系数据库中,用来表示实体之间联系的是(D)
A. 树结构 B. 网结构 C. 线性表 D. 二维表
(40) 将E-R图转换到关系模式时,实体与联系都可以表示成(B)
A. 属性 B. 关系 C. 键 D. 域
(56) 下列不属于软件调试技术的是(B)?? 注:P98A. 强行排错法 B. 集成测试法 C. 回溯法 D. 原因排除法
(57)下列叙述中,不属于软件需求规格说明书的作用的是(D)注:P71
A. 便于用户、开发人员进行理解和交流 B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据 C. 作为确认测试和验收的依据 D. 便于开发人员进行需求分析
(12) 算法的空间复杂度是指(D)
A. 算法程序的长度 B. 算法程序中的指令条数 C. 算法程序所占的存储空间 D. 算法执行过程中所需要的存储空间
(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出
A. 349 B. 350 C. 255 D. 351
(14) 结构化程序设计主要强调的是(B)
A.程序的规模 B.程序的易读性 C.程序的执行效率 D.程序的可移植性
(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)?? 注:即第一个阶段
A. 概要设计 B. 详细设计 C. 可行性分析 D. 需求分析
(26) 下面不属于软件工程的3个要素的是(D) 注:P62
A. 工具 B. 过程 C. 方法 D. 环境
(27) 程序流程图(PFD)中的箭头代表的是(B) 注:P81
A. 数据流 B. 控制流 C. 调用关系 D. 组成关系
(28) 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是(A)
(52) 栈和队列的共同点是(C)?? 注:这一共同点和线性表不一样A. 都是先进后出 B. 都是先进先出 C. 只允许在端点处插入和删除元素 D. 没有共同点
(53) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是(A)?? 注:P38,前提要掌握三种遍历的方法A. cedba B. acbed C. decab D. deabc
(58) 在数据流图(DFD)中,带有名字的箭头表示(C)
A. 控制程序的执行顺序 组成成分
(59) SQL语言又称为(C)
A. 结构化定义语言 B. 结构化控制语言 C. 结构化查询语言 D. 结构化操纵语言
(60) 视图设计一般有3种设计次序,下列不属于视图设计的(B)
(44) 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为(B) 注:要牢记
A. N+1 B. N C. (N+1)/2 D. N/2
(45) 信息隐蔽的概念与下述哪一种概念直接相关(B) 注:P74
A.软件结构定义 B. 模块独立性 C. 模块类型划分 D. 模拟耦合度
(46) 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)
(22) 下列关于栈的叙述中正确的是(D)
A. 在栈中只能插入数据 B. 在栈中只能删除数据C. 栈是先进先出的线性表 D. 栈是先进后出的线性表
(23) 下列关于队列的叙述中正确的是(C)
A. 在队列中只能插入数据 B. 在队列中只能删除数据C. 队列是先进先出的线性表 D. 队列是先进后出的线性表
(41) 在下列选项中哪个不是一个算法一般应该具有的基本特(C)
A. 确定性 B. 可行性 C. 无穷性 D. 拥有足够的情报
(42) 希尔排序法属于哪一种类型的排序法(B)
A.交换类排序法 B.插入类排序法 C.选择类排序法 D.建堆排序法
(43) 在深度为5的满二叉树中,叶子结点的个数为(C)A. 32 B. 31 C. 16 D. 15
(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108
A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式
(11) 算法的时间复杂度是指(C)
A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过程中所需要的基本运算次数 D. 算法程序中的指令条数
A. 确认测试 B. 集成测试 C. 验证测试 D. 验收测试
(36) 下列工具中属于需求分析常用工具的是(D) 注:P67
A. PAD B. PFD C. N-S D. DFD
(37) 下面不属于软件设计原则的是(C)????注:P73
A. 抽象 B. 模块化 C. 自底向上 D. 信息隐蔽
(31) 算法一般都可以用哪几种控制结构组合而成(D)?? 注:P3
A. 循环、分支、递归 B. 顺序、循环、嵌套C. 循环、递归、选择 D. 顺序、选择、循环
(32) 数据的存储结构是指(B)???? 注:P13,要牢记
A. 数据所占的存储空间量 B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式 D. 存储在外存中的数据
A. 数据结构设计 B. 给出系统模块结构C. 定义模块算法 D. 定义需求并建立系统模型