2006年9月全国计算机等级考试二级C笔试试卷(含参考答案)

合集下载

全国计算机等级考试(二级c )历年真题及答案

全国计算机等级考试(二级c  )历年真题及答案

全国计算机等级考试二级笔试试卷公共基础知识及C++语言程序设计(考试时间90分钟,满分100)分)一、选择题((1)~(35)每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1) 下面叙述正确的是A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是A)队列B)线性表C)二叉树D)栈(3)在一棵二叉树上第5层的结点数最多是A)8 B)16 C)32 D)15(4)下面描述中,符合结构化程序设计风格的是A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B)模块只有一个入口,可以有多个出口C)注重提高程序的执行效率D)不使用goto语句(5)下面概念中,不属于面向对象方法的是A)对象B)继承C)类D)过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是A)可行性分析B)需求分析C)详细设计D)程序编码(7)在软件开发中,下面任务不属于设计阶段的是A)数据结构设计B)给出系统模块结构C)定义模块算法D)定义需求并建立系统模型(8)数据库系统的核心是A)数据模型C)软件工具B)数据库管理系统D)数据库(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库设计是指设计数据库管理系统C)数据库技术的根本目标是要解决数据共享的问题D)数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是A)内模式B)外模式C)概念模式D)逻辑模式(11)关于面向对象的程序设计方法,下列说法正确的是A)“封装性”指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B)“多态性”指的是对象的状态会根据运行时要求自动变化C)基类的私有成员在派生类的对象中不可访问,也不占内存空间D)在面向对象的程序设计中,结构化程序设计方法仍有着重要作用(12)判断字符型变量ch是否为大写英文字母,应使用表达式A ) ch>='A' & ch<='Z'B ) ch<='A' ||ch>='Z'C ) 'A'<=ch<='Z'D ) ch>='A' && ch<='Z'(13)已知下列语句中的x和y都是int型变量,其中错误的语句A ) x=y++;B ) x=++y;C ) (x+y)++;D ) ++x=y;(14)执行语句序列int n;cin >> n;switch(n){ case 1:case 2: cout << '1';case 3:case 4: cout << '2'; break;default: cout << '3';}时,若键盘输入1,则屏幕显示A)1 B)2 C)3 D)12(15)下列程序的输出结果是#include <iostream>using namespace std;int main(){char a[] = "Hello, World";char *ptr = a;while (*ptr){if (*ptr >= 'a' && *ptr <= 'z')cout << char(*ptr + 'A' -'a');else cout << *ptr;ptr++;}return 0;}A ) HELLO, WORLDB ) Hello, WorldC ) hELLO, wORLD D ) hello, world(16)已知:int m=10;在下列定义引用的语句中,正确的是A ) int &x=m;B )int y=&m;C )int &z;D ) int &t=&m;(17)下列函数原型声明中错误的是A ) void Fun(int x=0, int y=0);B ) void Fun(int x, int y);C ) void Fun(int x, int y=0);D ) void Fun(int x=0, int y);(18)已知程序中已经定义了函数test,其原型是int test(int, int, int);,则下列重载形式中正确的是A ) char test(int,int,int);B ) double test(int,int,double);C ) int test(int,int,int=0);D ) float test(int,int,float=3.5F);(19)有以下程序#include<iostream>int i = 0;void fun(){ {static int i = 1;std::cout<<i++<<',';}std::cout<<i<<',';}int main(){fun(); fun();return 0;}程序执行后的输出结果是A)1,2,1,2, B)1,2,2,3, C)2,0,3,0, D)1,0,2,0,(20)已知函数f的原型是:void f(int *a, long &b); 变量v1、v2的定义是:int v1;long v2;,正确的调用语句是A) f(v1, &v2); B) f(v1, v2);C) f(&v1, v2); D) f(&v1, &v2);(21)有以下类定义class MyClass{public:MyClass(){cout<<1;}};则执行语句MyClass a, b[2], *p[2];后,程序的输出结果是A)11 B)111 C)1111 D)11111(22)关于友元,下列说法错误的是A)如果类A是类B的友元,那么类B也是类A的友元B)如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员C)友元关系不能被继承D)如果类A是类B的友元,那么类A的所有成员函数都是类B的友元(23)关于动态存储分配,下列说法正确的是A)new和delete是C++语言中专门用于动态内存分配和释放的函数B)动态分配的内存空间也可以被初始化C)当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D)当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new(24)有以下程序#include<iostream>using namespace std;class MyClass{public:MyClass(int n){number = n;}//拷贝构造函数MyClass(MyClass &other){ number=other.number;}~MyClass(){}private:int number;};MyClass fun(MyClass p){MyClass temp(p);return temp;}int main(){MyClass obj1(10), obj2(0);MyClass obj3(obj1);obj2=fun(obj3);return 0;}程序执行时,MyClass类的拷贝构造函数被调用的次数是A)5 B)4 C)3 D)2(25)在公有派生的情况下,派生类中定义的成员函数只能访问原基类的A)公有成员和私有成员B)私有成员和保护成员C)公有成员和保护成员D)私有成员、保护成员和公有成员(26)在C++中用来实现运行时多态性的是A)重载函数B)析构函数C)构造函数D)虚函数(27)一个类可以同时继承多个类,称为多继承。

全国计算机等级考试二级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。

2006年9月国家二级(C语言)笔试真题试卷(题后含答案及解析)

2006年9月国家二级(C语言)笔试真题试卷(题后含答案及解析)

2006年9月国家二级(C语言)笔试真题试卷(题后含答案及解析) 题型有:1. 选择题 2. 填空题选择题(1-10、21-40每题2分,11-20每题1分,共70分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1.下列选项中不符合良好程序设计风格的是______。

A.源程序要文档化B.数据说明的次序要规范化C.避免滥用goto语句D.模块设计要保证高耦合、高内聚正确答案:D解析:良好的程序设计风格可以使程序结构清晰合理,使程序代码便于维护,因此,程序设计风格对保证程序的质量很重要。

主要应注意和考虑下述—些因素:1、源程序要文挡化;2、数据说明的次序要规范化;3、语句的结构应该简单直接,不应该为提高效率而把语句复杂化,避免滥用goto语句。

模块设计要保证低耦合、高内聚。

2.从工程管理角度,软件设计—般分为两步完成,它们是______。

A.概要设计与详细设计B.过程控制C.软件结构设计与数据设计D.程序设计与数据设计正确答案:A解析:从工程管理角度看,软件设计分为两步完成:概要设计与详细设计。

概要设计(义称结构设计)将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式;详细设计确立每个模块的实现算法和局部数据结构,用适当方法表示算法和数据结构的细节。

3.下列选项中不属于软件生命周期开发阶段任务的是______。

A.软件测试B.概要设计C.软件维护D.详细设计正确答案:C解析:软件生命周期分为软件定义、软件开发及软件维护。

其中软件开发阶段的任务中软件设计阶段可分解成概要设计阶段和详细设计骱段;软件维护不属于软件开发阶段。

4.在数据库系统中,用户所见数据模式为______。

A.概念模式B.外模式C.内横式D.物理模式正确答案:B解析:数据库管理系统的三级模式结构由外模式、模式和内模式组成。

夕模式,或子模式,或用户模式,是指数据库用户所看到的数据结构,是用户看到的数据视图。

全国计算机等级考试二级C历年真题及答案

全国计算机等级考试二级C历年真题及答案

全国计算机等级考试二级C历年真题及答案一、选择题((1)~(35)每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下面叙述正确的是A)算法的执行效率与数据的存储结构无关B)算法的空间复杂度是指算法程序中指令(或语句)的条数C)算法的有穷性是指算法必须能在执行有限个步骤之后终止D)以上三种描述都不对(2)以下数据结构中不属于线性数据结构的是A)队列B)线性表C)二叉树D)栈(3)在一棵二叉树上第5层的结点数最多是A)8B)16C)32D)15(4)下面描述中,符合结构化程序设计风格的是A)使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B)模块只有一个入口,可以有多个出口C)注重提高程序的执行效率D)不使用goto语句(5)下面概念中,不属于面向对象方法的是A)对象B)继承C)类D)过程调用(6)在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是A)可行性分析B)需求分析C)详细设计D)程序编码(7)在软件开发中,下面任务不属于设计阶段的是A)数据结构设计B)给出系统模块结构C)定义模块算法D)定义需求并建立系统模型(8)数据库系统的核心是A)数据模型C)软件工具B)数据库管理系统D)数据库(9)下列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库设计是指设计数据库管理系统C)数据库技术的根本目标是要解决数据共享的问题D)数据库系统中,数据的物理结构必须与逻辑结构一致(10)下列模式中,能够给出数据库物理存储结构与物理存取方法的是A)内模式B)外模式C)概念模式D)逻辑模式(11)关于面向对象的程序设计方法,下列说法正确的是A)―封装性‖指的是将不同类型的相关数据组合在一起,作为一个整体进行处理B)―多态性‖指的是对象的状态会根据运行时要求自动变化C)基类的私有成员在派生类的对象中不可访问,也不占内存空间D)在面向对象的程序设计中,结构化程序设计方法仍有着重要作用(12)判断字符型变量ch是否为大写英文字母,应使用表达式A)ch>='A'&ch<='Z'B)ch<='A'||ch>='Z'C)'A'<=ch<='Z'D)ch>='A'&& ch<='Z'(13)已知下列语句中的某和y都是int型变量,其中错误的语句A)某=y++;B)某=++y;C)(某+y)++;D)++某=y;(14)执行语句序列intn;cin>>n;witch(n){cae1:cae2:cout<<'1';cae3:cae4:cout<<'2';break;default:cout<<'3';}时,若键盘输入1,则屏幕显示A)1B)2C)3D)12(15)下列程序的输出结果是#includeuingnamepacetd;intmain(){chara[]=\char某ptr=a;while(某ptr){if(某ptr>='a'&&某ptr<='z')cout<<char(某ptr+'A'-'a');elecout<<某ptr;ptr++;}return0;}A)HELLO,WORLDB)Hello,WorldC)hELLO,wORLDD)hello,world(16)已知:intm=10;在下列定义引用的语句中,正确的是A)int&某=m;B)inty=&m;C)int&z;D)int&t=&m;(17)下列函数原型声明中错误的是A)voidFun(int某=0,inty=0);B)voidFun(int某,inty);C)voidFun(int某,inty=0);D)voidFun(int某=0,inty);(18)已知程序中已经定义了函数tet,其原型是inttet(int,int,int);,则下列重载形式中正确的是A)chartet(int,int,int);B)doubletet(int,int,double);C)inttet( int,int,int=0);D)floattet(int,int,float=3.5F);(19)有以下程序#includeinti=0;voidfun(){{taticinti=1;td::cout<td::cout<2intmain(){fun();fun();return0;}程序执行后的输出结果是A)1,2,1,2,B)1,2,2,3,C)2,0,3,0,D)1,0,2,0,(20)已知函数f的原型是:voidf(int某a,long&b);变量v1、v2的定义是:intv1;longv2;,正确的调用语句是A)f(v1,&v2);B)f(v1,v2);C)f(&v1,v2);D)f(&v1,&v2);(21)有以下类定义claMyCla{public:MyCla(){cout<<1;}};则执行语句MyClaa,b[2],某p[2];后,程序的输出结果是A)11B)111C)1111D)11111(22)关于友元,下列说法错误的是A)如果类A是类B的友元,那么类B也是类A的友元B)如果函数fun()被说明为类A的友元,那么在fun()中可以访问类A的私有成员C)友元关系不能被继承D)如果类A是类B的友元,那么类A的所有成员函数都是类B的友元(23)关于动态存储分配,下列说法正确的是A)new和delete是C++语言中专门用于动态内存分配和释放的函数B)动态分配的内存空间也可以被初始化C)当系统内存不够时,会自动回收不再使用的内存单元,因此程序中不必用delete释放内存空间D)当动态分配内存失败时,系统会立刻崩溃,因此一定要慎用new(24)有以下程序#includeuingnamepacetd;claMyCla{public:MyCla(intn){number=n;}//拷贝构造函数MyCla(MyCla&other){number=other.number;}~MyCla(){}private: intnumber;};MyClafun(MyClap){3MyClatemp(p);returntemp;}intmain(){MyClaobj1(10),obj2(0);MyClaobj3(obj1);obj2=fun(obj3);return0 ;}程序执行时,MyCla类的拷贝构造函数被调用的次数是A)5B)4C)3D)2(25)在公有派生的情况下,派生类中定义的成员函数只能访问原基类的A)公有成员和私有成员B)私有成员和保护成员C)公有成员和保护成员D)私有成员、保护成员和公有成员(26)在C++中用来实现运行时多态性的是A)重载函数B)析构函数C)构造函数D)虚函数(27)一个类可以同时继承多个类,称为多继承。

2006年9月全国计算机等级考试二级C 程序设计笔试试卷

2006年9月全国计算机等级考试二级C  程序设计笔试试卷

2006年9月全国计算机等级考试二级C++程序设计笔试试卷下列各题A)B)C)D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列选项中不符合良好程序设计风格的是______。

A)源程序要文档化 B)数据说明的次序要规范化C)避免滥用goto 语句 D)模块设计要保证高耦合,高内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是______。

A)概要设计与详细设计 B)数据设计与接口设计C)软件结构设计与数据设计 D)过程设计与数据设计(3)下列选项中不属于软件生命周期开发阶段任务的是______。

A)软件测试 B)概要设计 C)软件维护 D)详细设计(4)在数据库系统中,用户所见的数据模式为______。

A)概念模式 B)外模式 C)内模式 D)物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和______。

A)编码设计 B)测试阶段 C)运行阶段 D)物理设计(6)设有如下三个关系表下列操作中正确的是A)T=R∩S B)T=R∪S C)T=R×S D)T=R/S(7)下列叙述中正确的是A)一个算法的空间复杂度大,则其时间复杂度也必定大B)一个算法的空间复杂度大,则其时间复杂度必定小C)一个算法的时间复杂度大,则其空间复杂度必定小D)上述三种说法都不对(8)在长为64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为______。

A)63 B)64 C)6 D)7(9)数据库技术的根本目标是要解决数据的______。

A)存储问题 B)共享问题 C)安全问题 D)保护问题(10)对下列二叉树:进行中序遍历的结果是______。

A)ACBDFEG B)ACBDFGE C)ABDCGEF D)FCADBEG(11)下列有关内联函数的叙述中,正确的是______。

A)内联函数在调用时发生控制转移B)内联函数必须通过关键字inline 来定义C)内联函数是通过编译器来实现的D)内联函数体的最后一条语句必须是rennin 语句(12)下列情况中,不会调用拷贝构造函数的是______。

06全国计算机等级考试二级C语言笔试试题及答案

06全国计算机等级考试二级C语言笔试试题及答案

2006年9月全国计算机等级考试二级C语言笔试试题及答案一、选择题(每小题2 分,共70 分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列选项中不符合良好程序设计风格的是______。

A)、源程序要文档化B)、数据说明的次序要规范化C)、避免滥用goto 语句D)、模块设计要保证高耦合,高内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是______。

A)、概要设计与详细设计B)、数据设计与接口设计C)、软件结构设计与数据设计D)、过程设计与数据设计(3)下列选项中不属于软件生命周期开发阶段任务的是______。

A)、软件测试B)、概要设计C)、软件维护D)、详细设计(4)在数据库系统中,用户所见的数据模式为______。

A)、概念模式B)、外模式C)、内模式D)、物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和______。

A)、编码设计B)、测试阶段C)、运行阶段D)、物理设计(6)设有如下三个关系表下列操作中正确的是A)、T=R∩SB)、T=R∪SC)、T=R×SD)、T=R/S(7)下列叙述中正确的是A)、一个算法的空间复杂度大,则其时间复杂度也必定大B)、一个算法的空间复杂度大,则其时间复杂度必定小C)、一个算法的时间复杂度大,则其空间复杂度必定小D)、上述三种说法都不对(8)在长为64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为______。

A)、63B)、64C)、6D)、7(9)数据库技术的根本目标是要解决数据的______。

A)、存储问题B)、共享问题C)、安全问题D)、保护问题(10)对下列二叉树:进行中序遍历的结果是______。

A)、ACBDFEGB)、ACBDFGEC)、ABDCGEFD)、FCADBEG(11)下列有关内联函数的叙述中,正确的是______。

9月计算机二级C语言考试试题附答案

9月计算机二级C语言考试试题附答案

9月计算机二级C语言考试试题附答案C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

以下是关于计算机二级C语言考试试题附答案,希望大家认真练习!第1题给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每个字符,紧随其后重复出现一次,形成一个新串放在t中,t中字符按原字符串中字符顺序排列。

例如:当s中的字符串为:"ABAABBCCDDEE"。

则t中的字符串应为:"AABBCCDDEE"。

请改正函数fun中的错误,使它能得出正确的结果。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!Modi1.c#include#include#include/************found************/void fun (char s,char t) /参考答案:void fun (char *s,char *t)/ { int i, sl;sl = strlen(s);for (i=0; i{ t[2*i] = s[i];t[2*i+1] = s[i];}/************found************/t[2*sl] = '0'; /参考答案:t[2*sl] = '\0';/}main(){ char s[100], t[100];printf("\nPlease enter string s:"); scanf("%s", s);fun(s, t);printf("The result is: %s\n", t);}第2题给定程序MODI1.C中函数 fun 的功能是:把在字符串s中出现的每个字符,紧随其后重复出现一次,放在一个新串t中,t中字符按原字符串中逆排列。

2006年9月全国计算机等级考试二级C 笔试真题及答案.

2006年9月全国计算机等级考试二级C  笔试真题及答案.

2006 年9 月全国计算机等级考试二级C++试卷一、选择题(每小题 2 分,共70 分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列选项中不符合良好程序设计风格的是______ 。

A)、源程序要文档化B)、数据说明的次序要规范化C)、避免滥用goto 语句D)、模块设计要保证高耦合,高内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是______ 。

A)、概要设计与详细设计B)、数据设计与接口设计C)、软件结构设计与数据设计D)、过程设计与数据设计(3)下列选项中不属于软件生命周期开发阶段任务的是______ 。

A)、软件测试B)、概要设计C)、软件维护D)、详细设计(4)在数据库系统中,用户所见的数据模式为______ 。

A)、概念模式B)、外模式C)、内模式D)、物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和______ 。

A)、编码设计B)、测试阶段C)、运行阶段D)、物理设计(6)设有如下三个关系表下列操作中正确的是A)、T=R∩S B )、T=R ∪S C )、T=R×S D )、T=R/S(7)下列叙述中正确的是A)、一个算法的空间复杂度大,则其时间复杂度也必定大B)、一个算法的空间复杂度大,则其时间复杂度必定小C)、一个算法的时间复杂度大,则其空间复杂度必定小D)、上述三种说法都不对(8)在长为64 的有序线性表中进行顺序查找,最坏情况下需要比较的次数为______ 。

A)、63 B )、64 C )、6 D )、7(9)数据库技术的根本目标是要解决数据的______ 。

A)、存储问题B)、共享问题C)、安全问题D)、保护问题(10 )对下列二叉树:进行中序遍历的结果是______ 。

A)、ACBDFEG B )、ACBDFGE C )、ABDCGEF D )、FCADBEG(11 )下列有关内联函数的叙述中,正确的是______ 。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2006年9月全国计算机等级考试二级C笔试试卷(含参考答案)2006年9月全国计算机等级考试二级笔试试卷C语言程序设计(考试时间120分钟,满分100分)一、选择题。

(1~10每题2分,11~50每题1分,共60分)1、下列选项中不符合良好程序设计风格的是A、源程序要文档化B、数据说明的次序要规范化C、避免滥用goto语句D、模块设计要保证高耦合、高内聚2、从工程管理角度,软件设计一般分为两步完成,它们是A、概要设计与详细设计B、数据设计与接口设计C、软件结构设计与数据设计D、过程设计与数据设计3、下列选项中不属于软件生命周期开发阶段任务的是A、软件测试B、概要设计C、软件维护D、详细设计4、在数据库系统中,用户所见的数据模式为A、概念模式B、外模式C、内模式D、物理模式5、数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和A、编码设计B、测试阶段C、运行阶段D、物理设计6、设有如下三个关系表下列操作中正确的是A、T=R∩SB、T=R∪SC、T=R×SD、T=R/S7、下列叙述中正确的是A、一个算法的空间复杂度大,则其时间复杂度也必定大B、一个算法的空间复杂度大,则其时间复杂度必定小C、一人算法的时间复杂度大,则其空间复杂度必定小D、上述三种说法都不对8、在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为A、63B、64C、6D、79、数据库技术的根本目标是要解决数据的A、存储问题B、共享问题C、安全问题D、保护问题10、对下列二叉树进行中序遍历的结果是:A、ACBDFEGB、ACBDFGEC、ABDCGEFD、FCADBEG11、下列叙述中错误的是A、一个C语言程序只能实现一种算法B、C程序可以由多个程序文件组成C、C程序可以由一个或多个函数组成D、一个C函数可以单独作为一个C程序文件存在12、下列叙述中正确的是A、每个C程序文件中都必须要有一个main()函数B、在C程序中main()函数的位置是固定的C、C程序中所有函数之间都可以相互调用,与函数所在位置无关D、在C程序的函数中不能定义另一个函数13、下列定义变量的语句错误的是A、int _int;B、double int_;C、char For;D、float US$14、若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是A、++x,y=x--B、x+1=yC、x=x+10=x+yD、double(x)/1015、以下关于逻辑运算符两侧运算对象的叙述中正确的是A、只能是整数0或1B、只能是整数0或非0整数C、可以是结构体类型的数据D、可以是任意合法的表达式16、若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x++):(y++)中的条件表达式(x-y)等价的是A、(x-y>0)B、(x-y< 0)C、(x-y<0||x-y>0)D、(x-y==0)17、有以下程序main(){int x,y,z;x=y=1;z=x++,y++,++y;printf(“%d,%d,%d\n”,x,y,z);}程序运行后的输出结果是A、2,3,3B、2,3,2C、2,3,1D、2,2,118、设有定义:int a; float b; 执行scanf(“%2d%f”,&a,&b);语句时,若从键盘输入876 543.0<回车>,a和b的值分别是A、876 和543.000000B、87和6.000000C、87和543.000000D、76和543.00000019、有以下程序main(){int a=0,b=0;a=10;b=20;printf(“a+b=%d\n”,a+b);}A、a+b=10B、a+b=30C、30D、出错20、在嵌套使用if语句时,C语言规定else总是A、和之前与其具用相同缩进位置的if配对B、和之前与其最近的if配对C、和之前与其最近的且不带else的if配对D、和之前的第一个if 配对21、下列叙述中正确的是A、break语句只能用于switch语句B、在switch语句中必须使用defaultC、break语句必须与switch语句中的case配对使用D、在switch语句中,不一定使用break语句22、有以下程序main(){int k=5;while(--k ) printf(“%d”,k-=3);printf(“\n”);}A、1B、2C、4D、死循环23、有以下程序main(){int i;for(i=1;i<=40;i++){if(i++%5==0)if(++i%8==0) printf(“%d”,j);}printf(“\n”);}A、5B、24C、32D、4024、以下选项中,值为1的表达式是A、1-‘0’B、1-‘\0’C、‘1’-0D、‘\0’-‘0’25、有以下程序:fun(int x,int y){return(x+y);} main(){int a=1,b=2,c=3,sum;sum=fun((a++,b++,a+b),c++); printf("%d\n",sum);}执行后的输出结果是A、6B、7C、8D、926、有以下程序:main(){char s[]="abcde";s+=2;printf("%d\n",s[0]);}执行后的结果是A、输出字符a的ASCII码B、输出字符c的ASCII码C、输出字符cD、程序出错27、有以下程序fun(int x,int y){static int m=0,i=2;i+=m+1; m=i+x+y; return m; }main(){int j=1,m=1,k;k=fun(j,m); printf("%d",k);k=fun(j,m); printf("%d",k);}执行后的输出结果是A、5,5B、5,11C、11,11D、11,528、有以下程序:fun(int x){int p;if(x==0||x==1) return 3;p=x-fun(x-2);return p;}main(){printf("%d\n",fun(7));}执行后的输出结果是A、7B、3C、2D、029、在16位编译系统上,若有定义int a[]={10,20,30},*p=&a;当执行p++后,下列说法错误的是A、p向高地址移了一个字节B、p向高地址称了一个存储单元C、p向高地址移了两个字节D、p与a+1等价30、有以下程序main(){int a=1,b=3,c=5;int *p1=&a,*p2=&b,*p=&c;*p=*p1*(*p2);printf("%d\n",c);}执行后的输出结果是A、1B、2C、3D、431、若有定义:int w[3][5];,则以下不能正确表示该数组元素的表达式是A、*(*w+3)B、*(w+1)[4]C、*(*(w+1))D、*(&w[0][0]+1)32、若有以下函数首部int fun(double x[10], int *n)则下面针对此函数的函数声明语句中正确的是A、int fun(double x ,int *n);B、int fun(double ,int );C、int fun(double *x, int n);D、int fun(double *, int *);33、若有定义语句:int k[2][3], *pk[3];,则以下语句中正确的是A、pk=k;B、pk[0]=&k[1][2];C、pk=k[0];D、pk[1]=k;34、有以下程序void change(int k[]){k[0]=k[5];}main(){int x[10]={1,2,3,4,5,6,7,8,9,10},n=0;while(n<=4) {change(&x[n]);n++;}for(n=0;n<5;n++) printf("%d ",x[n]);printf("\n");}程序运行后输出的结果是A、6 7 8 9 10B、1 3 5 7 9C、1 2 3 4 5D、6 2 3 4 535、若要求定义具有10个int型元素的一维数组a,则以下定义语句中错误的是A、#define N 10B、#define n 5int a[N]; int a[2*n];C、int a[5+5];D、int n=10, a[n];36、有以下程序main(){int x[3][2]={0},i;for(i=0;i<3;i++) scanf("%d",x[i]);printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]);}若运行时输入:2 4 6<回车>,则输出结果为:A、2 0 0B、2 0 4C、2 4 0D、2 4 637、有以下程序main(){char s[]={"aeiou"},*ps;ps=s; printf("%c\n",*ps+4);}程序运行后的输出结果是A、aB、eC、uD、元素s[4]的地址38、以下语句存在语法错误的是A、char ss[6][20]; ss[1]=”right?”;B、char ss[][20]={“right?”};C、char *ss[6]; ss[1]=”right?”;D、char *ss[]={“right?”};39、若有定义:char *x=”abcdefghi’;,以下选项中正确运用了strcpy函数的是A、char y[10]; strcpy(y,x[4]);B、char y[10]; strcpy(++y,&x[1]);C、char y[10],*s; strcpy(s=y+5,x);D、char y[10],*s; strcpy(s=y+1,x+1);40、有以下程序int add( int a, int b) {return (a+b);}main(){ int k,(*f)(),a=5,b=10;f=add;…}则以下函数调用语句错误的是A、k=(*f)(a,b);B、k=add(a,b);C、k=*f(a,b)D、k=f(a,b);41、有以下程序#includemain(int argc,char *argv[]){int i=1,n=0;while(i<="" p="" {n="n+strlen(argv[i]);">printf("%d\n",n);}该程序生成的可执行文件名为:proc.exe 。

相关文档
最新文档