全国计算机等级考试二级C语言真题2013年3月

合集下载

2013年全国计算机等级二级C语言模拟试题及答案

2013年全国计算机等级二级C语言模拟试题及答案

2013年全国计算机等级二级C 语言模拟试题及答案2013年3月份全国计算机等级二级C语言试题及答案一、填空题1、C语言中基本的数据类型有:__________、__________ 、__________ 。

2、C语言中普通整型变量的类型说明符为__________,在内存中占__________字节,有符号普通整型的数据范围是__________。

3、整数-35在机内的补码表示为__________。

4、执行下列语句int a=8; a+=a-=a*a; 后,a的值是__________ 。

5、有如下语句:char A[ ]={”I am a student”}; 该字符串的长度是__________,A[3]=__________ 。

6、符号”a”和’a’的区别是__________。

7、所谓“指针”就是__________ 。

“&”运算符的作用是__________。

“*”运算符的作用是__________ 。

8、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是__________。

二、选择题1、设整型变量a为5,使b不为2的表达式是()。

A. b=a/2B. b=6-(--a)C. b=a%2D. b=a>3?2:12、为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与()组成配对关系。

A. 缩排位置相同的ifB. 在其之前未配对的ifC. 在其之前未配对的最近的ifD.同一行上的if3、以下程序的输出结果是( )。

int x=10,y=10;printf(“%d%d\n”,x--,--y);A. 10 10B. 9 9C. 9 10D. 10 94、设A为存放(短)整型的一维数组,如果A的首地址为P,那么A中第i 个元素的地址为()。

3月全国计算机二级c语言真题参考答案

3月全国计算机二级c语言真题参考答案

3月全国计算机二级c语言真题参考答案2013年3月全国计算机二级c语言真题参考答案一、选择题:1、(C)二叉树链表2、(B)循环链表3、(C)函数的递归调用4、(D)软件运行存在磨损和老化问题5、(B)等价类划分6、(A)软件的功能确定7、(B)系统软件8、(A)矩形9、(C)投影10、(A)ISBN书号11、(A)标准模块中既有控件,也有代码12、(C)print_s13、(D)3avg14、(C)i = 0: s = 0Doi = i + 1s = s + iLoop Until i = 100Print s15、(C)False16、(B)方法和事件17、(D)在程序运行期间,可以修改命令按钮的Style属性。

18、(B)419、(C)15 720、(A)15 921、(B)Lostfocus22、(B)25 16 9 4 1 3623、(C)不能在Form2中引用Form1中控件的属性值,因此上述程序有错误24、(B)Dir1_Change25、(A)1 2 326、(B)变量x的作用域是Form127、(A)为了满足不同存取方式的需要,可以对同一个随机文件用几个不同的文件号打开28、(B)双击命令按钮,会触发命令按钮的.DblClick事件29、(C)对话框的“文件类型”框中显示内容为“文本文件(*.txt)”30、(D)菜单的Caption属性不可以为空字符串31、(D)Sub Main过程能被Visual Basic自动识别并一定首先被执行32、(C) afbecd33、(C)在窗体上显示“表达式1”34、(A) 3 5 7 4 535、(D)For j=n to i+1 Step -1二、填空题1、62、A,B,C,D,E,F,5,4,3,2,13、耦合性4、35、逻辑设计6、arr As Variant、4–i7、 <= 、False、i – 18、Combo1、Combo1.ListCount – 1、i9、Output、Print或Write【2013年3月全国计算机二级c语言真题参考答案】。

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)考试频道小编收集整理计算机等级考试资料,免费提供给大家交流参考。

第二十一套1. 程序填空给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串右边的字符删去,只保留左边的k个字符。

ss所指字符串数组中共有N个字符串,且串小于M。

第一处void fun(char (*ss)[M], int k)第二处while (i第三处ss[i][k]=0;i++;}2. 程序修改给定程序MODI1.C中函数fun的功能是:根据以下公式求值,并作为函数值返回。

例如,给指定精度的变量eps输入0.0005时,应当输出Pi=30140578.。

/**found**/t=1;/**found**/return(2*s);3. 程序设计假定输入字符串中只包含字母和*号。

请编写函数fun,它的功能是:将字符串的前导*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。

函数fun中给出的语句仅供参考。

void fun(char*a,int n){int i=0,k=0;while(a[k]= =*)k++;if(kn){i=n;j=k;for(;a[j]!=0;j++)a[i++]=a[j];a[i]=0;}}第二十二套1. 程序填空给定程序中,函数fun的功能是:a所指43矩阵中第k行的元素与第0行元素交换。

例如:有下列矩阵1 2 34 5 67 8 910 11 12若k为2,程序执行结果为7 8 94 5 61 2 310 11 12第一处void fun(int (*a)[N],int k)第二处for(i=0;i第三处a[0][i]=a[k][i];2. 程序修改给定程序MODI1.C中函数fun的功能是:读入一个字符串(长度20),将该字符串中的所有字符串按ASCII码升序排序后输出。

2013你啊你3月份全国计算机二级ACCESS考试试题及答案

2013你啊你3月份全国计算机二级ACCESS考试试题及答案

2013年3月份全国计算机等级考试二级笔试试卷Access数据库程序设计(考试时间90分钟,满分100分)一、选择题(每小题2分,共70分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)下列叙述中正确的是A)程序设计就是编制程序B)程序的测试必须由程序员自己去完成C)程序经调试改错后还应进行再测试D)程序经调试改错后不必进行再测试(2)下列数据结构中,能用二分法进行查找的是A)顺序存储的有序线性表B)线性链表C)二叉链表D)有序线性链表(3)下列关于栈的描述正确的是A)在栈中只能插入元素而不能删除元素B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入或删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(4)下列叙述中正确的是A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,存储结构属于非线性结构C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(5)下列描述中正确的是A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题(6)在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言) B)PAD图C)N-S图D)DFD图(7)下列叙述中正确的是A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令(8)数据库设计的根本目标是要解决A)数据共享问题B)数据安全问题C)大量数据存储问题D)简化数据维护(9)设有如下关系表:R S T则下列操作中正确的是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中的一条记录与表B中的多条记录相匹配,且表B中的一条记录与表A中的多条记录相匹配,则表A与表B存在的关系是A)一对一B)一对多C)多对一D)多对多(13)利用Access创建的数据库文件,其扩展名为A).ADP B).DBF C).FRM D).MDB(14)下面关于Access表的叙述中,错误的是A)在Access表中,可以对备注型字段进行“格式”属性设置B)若删除表中含有自动编号型字段的一条记录后,Access不会对表中自动编号型字段重新编号C)创建表之间的关系时,应关闭所有打开的表D)可在Access表的设计视图“说明”列中,对字段进行具体的说明(15)在Access表中,可以定义3种主关键字,它们是A)单字段、双字段和多字段B)单字段、双字段和自动编号C)单字段、多字段和自动编号D)双字段、多字段和自动编号(16)~(21)题使用已建立的“tEmployee”表,表结构及表内容如下所示:A)5 5 B)5 10 C)10 10 D)10 20(17)若要确保输入的联系电话值只能为8位数字,应将该字段的输入掩码设置为A)00000000 B)99999999 C)######## D)????????(18)若在“tEmployee”表中查找所有姓“王”的记录,可以在查询设计视图的准则行中输入A)Like "王" B)Like "王*" C)="王" D)="王*"(19)下面显示的是查询设计视图的“设计网格”部分,从此部分所示的内容中可以判断出要创建的查询A)删除查询B)生成表查询C)选择查询D)更新查询(20)下面显示的是查询设计视图,从设计视图所示的内容中判断此查询将显A)出生日期字段值B)所有字段值C)除出生日期以外的所有字段值D)雇员ID字段值21)若以“tEmployee”表为数据源,计算每个职工的年龄(取整),并显示如下图所示的结果,那么正确的设计是22)~(24)题中使用下图,窗体的名称为fmTest,窗体中有一个标签和一个命令按钮,名称分别为Label1和bChange(22)在“窗体视图”显示该窗体时,要求在单击命令按钮后标签上显示的文字颜色变为红色,以下能实现该操作的语句是A)label1.ForeColor = 255 B)bChange.ForeColor = 255C)label1.ForeColor = "255" D)bChange.ForeColor = "255"(23)若将窗体的标题设置为“改变文字显示颜色”,应使用的语句是A)Me ="改变文字显示颜色" B)Me.Caption="改变文字显示颜色"C)Me.text="改变文字显示颜色" D)="改变文字显示颜色"(24)在“窗体视图”中显示窗体时,窗体中没有记录选定器,应将窗体的“记录选定器”属性值设置为A)是B)否C)有D)无(25)为窗体或报表上的控件设置属性值的正确宏操作命令是A)Set B)SetData C)SetWarnings D)SetValue(26)下列不属于操作查询的是A)参数查询B)生成表查询C)更新查询D)删除查询(27)使用自动创建数据访问页功能创建数据访问页时,Access会在当前文件夹下,自动保存创建的数据访问页,其格式为A)HTML B)文本C)数据库D)Web(28)能被“对象所识别的动作”和“对象可执行的活动”分别称为对象的A)方法和事件B)事件和方法C)事件和属性D)过程和方法(29)在关于报表数据源设置的叙述中,以下正确的是A)可以是任意对象B)只能是表对象C)只能是查询对象D)可以是表对象或查询对象(30)在报表设计的工具栏中,用于修饰版面以达到更好显示效果的控件是A)直线和矩形B)直线和圆形C)直线和多边形D)矩形和圆形31)下列逻辑表达式中,能正确表示条件“x和y都是奇数”的是A)x Mod 2 =1 Or y Mod 2 =1 B)x Mod 2 =0 Or y Mod 2=0C)x Mod 2 =1 And y Mod 2 =1 D)x Mod 2 =0 And y Mod 2=0(32)若要求在文本框中输入文本时达到密码“*”号的显示效果,则应设置的属性是A)“默认值”属性B)“标题”属性C)“密码”属性D)“输入掩码”属性(33)假定有以下循环结构Do Until 条件循环体Loop则正确的叙述是A)如果“条件”值为0,则一次循环体也不执行B)如果“条件”值为0,则至少执行一次循环体C)如果“条件”值不为0,则至少执行一次循环体D)不论“条件”是否为“真”,至少要执行一次循环体(34)窗体上添加有3个命令按钮,分别命名为Command1、Command2和Command3。

计算机二级c语言经典练习题及解析答案

计算机二级c语言经典练习题及解析答案

计算机二级c语言经典练习题及解析答案一、单选题1. C语言中的三大基本数据类型包括( B )A.整型、实型、逻辑型B.整型、实型、字符型C.整型、逻辑型、字符型D.整型、实型、逻辑型、数组型2. 在C语言中,以下合法的字符常量是( c )A. '\048'B. 'ab'C. '\43'D. "\0"3.设x 为 int 型变量,执行下列语句: x=10; x+=x-=x-x; 则x的值为 ( B )A. 15B. 20C. 25D. 304. 定义如下变量和数组: int i, x[3][3]={1,2,3,4,5,6,7,8,9};则下面语句for(i=0;i<3;i++) printf("%d",x[i][2-i]); 的输出结果是( C )A. 1 4 7B. 1 5 9C. 3 5 7D. 3 6 95.逗号表达式(a=3*5,a*4),a+15的值是( b )A.15B. 30C. 60D. 756. .以下程序的输出结果是( c )。

main( ){ int x=10,y=11;printf("%d,%d\n",x--,--y);}A. 11,11B. 10,11C. 10, 10D.11,107.若一个外部变量的定义形式为static int x ; 其中static的作用是( d )A.将变量存放在静态存储区,使x的值可以永久保留B.使变量x可以由系统自动初始化C.使x的值可以永久保留D.使x只能在本文件内引用8.有如下变量说明:int k=2;则下面的循环共执行多少( d )次while (k!=0) {printf("%d",k);k--;}A.无限多次 B.0次 C.1次 D. 2次9.设有变量说明:int a=7,b=8;那么语句:printf("%d,%d\n",(a+b,a),(b,a+b));的输出应该是( a )A. 7,15B. 8,15C. 15,7D.15,810.若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是( b )A. p+1B. a++C. a+1D. ++p11. C语言变量名中不能使用的字符是( d )A. 数字B. 字母C. 下划线D. 关键字12.以下变量定义中合法的是( a )A.short a=2.1e-1;B. double b=1+5e0.5;C. long do=0xffe ;D. float 3_end=1-e3;13.若有说明语句char ch1=′\x79′;则ch1( c )A.包含4个字符B.包含3个字符C. 包含2个字符D.包含1个字符14.C语言中的函数( b )A. 可以嵌套定义B.嵌套调用和递归调用均可C. 不可以嵌套调用D. 可以嵌套调用但不可以递归调用15. 设整形变量a=12;则执行完语句a+=a-=a*a后a的值为( c )A. 552B. 264C. -264D. 14416.设a=1,b=2,c=3,d=4,则表达式:a>b?a:c<d?a:d的结果是( a )A.1 B.2 C.3 D.417.若有说明语句:int b[][4]={ 3,1,2,5,7,6,4}; 则b数组的行数为( b )A. 3B. 2C.无确定值D. 118. 若有定义:char c[10];从键盘输入“LiFang”,则正确的函数引用是( c )A. scanf(″%c″,&c[10]);B. gets(c);C. scanf(″%s″,&c);D. gets(c[10]);19. 两个基类型相同的指针变量之间,不能进行的运算是( c )A. <B. =C. +D.-20. 下面程序段执行结果是( b )int i=5,k; k=(++i)+(++i)+(i++); printf("%d,%d",k,i);A. 24,8B. 21,8C. 21,7D. 24,721.以下选项中属于C语言的数据类型是( b )。

二级C语言真题2013年03月-(3)

二级C语言真题2013年03月-(3)

二级C语言真题2013年03月-(3)(总分:100.00,做题时间:90分钟)一、选择题(总题数:40,分数:40.00)1.设数据元素的集合D={1,2,3,4,5},则满足下列关系R的数据结构中为线性结构的是______。

(分数:1.00)A.R={(1,2),(3,4),(5,1)}B.R={(1,3),(4,1),(3,2),(5,4)} √C.R={(1,2),(2,3),(4,5)}D.R={(1,3),(2,4),(3,5)}解析:[解析] 一个非空的数据结构如果满足以下两个条件:有且只有一个根节点;每一个节点最多有一个前件,也最多有一个后件,称为线性结构。

不同时满足以上两个条件的数据结构就称为非线性结构。

A选项中有两个根节点3和5故错误。

B选项根节点为5,排列顺序为54132,B选项正确。

C选项有两个根节点1和4,故错误。

D选项有两个根节点1和2,故错误。

2.下列叙述中正确的是______。

(分数:1.00)A.链表节点中具有两个指针域的数据结构可以是线性结构,也可以是非线性结构√B.线性表的链式存储结构中,每个节点必须有指向前件和指向后件的两个指针C.线性表的链式存储结构中,每个节点只能有一个指向后件的指针D.线性表的链式存储结构中,叶子节点的指针只能是空解析:[解析] 双向链表与树形结构的节点均可以包含两个指针域,但前者为线性结构,后者为非线性结构,故A选项正确。

双向链表含有指向前件和指向后件的两个指针,故C选项错误。

线性链表就是指线性表的链式存储结构。

由于这种链表中,每个节点只有一个指针域,故又称为单链表,故B选项错误。

二叉树为非线结构,叶子节点没有后件,但是可以有指向前件的指针,故D选项错误。

3.一个栈的初始状态为空。

现将元素A,B,C,D,E依次入栈,然后依次退栈三次,并将退栈的三个元素依次入队(原队列为空),最后将队列中的元素全部退出。

则元素退队的顺序为______。

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)

3月全国计算机等级考试二级C语言上机题库(20~30套)3月全国计算机等级考试二级C语言上机题库(20~30套)考试频道小编收集整理计算机等级考试资料,免费提供给大家交流参考。

第二十一套1. 程序填空给定程序中,函数fun的功能是:在形参ss所指字符串数组中,将所有串长超过k的字符串右边的字符删去,只保留左边的k个字符。

ss所指字符串数组中共有N个字符串,且串小于M。

第一处void fun(char (*ss)[M], int k)第二处while (i第三处ss[i][k]=0;i++;}2. 程序修改给定程序MODI1.C中函数fun的功能是:根据以下公式求值,并作为函数值返回。

例如,给指定精度的变量eps输入0.0005时,应当输出Pi=30140578.。

/**found**/t=1;/**found**/return(2*s);3. 程序设计假定输入字符串中只包含字母和*号。

请编写函数fun,它的功能是:将字符串的前导*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。

函数fun中给出的语句仅供参考。

void fun(char*a,int n){int i=0,k=0;while(a[k]= =*)k++;if(kn){i=n;j=k;for(;a[j]!=0;j++)a[i++]=a[j];a[i]=0;}}第二十二套1. 程序填空给定程序中,函数fun的功能是:a所指43矩阵中第k行的元素与第0行元素交换。

例如:有下列矩阵1 2 34 5 67 8 910 11 12若k为2,程序执行结果为7 8 94 5 61 2 310 11 12第一处void fun(int (*a)[N],int k)第二处for(i=0;i第三处a[0][i]=a[k][i];2. 程序修改给定程序MODI1.C中函数fun的功能是:读入一个字符串(长度20),将该字符串中的所有字符串按ASCII码升序排序后输出。

c语言真题-试卷答案及解释(2013年3月)

c语言真题-试卷答案及解释(2013年3月)

c语言真题-试卷答案及解释(2013年3月)一、选择题(1)B 【解析】N-S图是由Nassi 和Shneiderman 提出的一种符合程序化结构设计原则的图形描述工具。

它的提出是为了避免流程图在描述程序逻辑时的随意性上灵活性。

(2)D 【解析】结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化及限制使用goto语句,总的来说可使程序结构良好、易读、易理解、易维护。

(3)B【解析】模块的独立程度可以由两个定性标准度量:耦合性和内聚性。

耦合性是衡量不同模块彼此间互相依赖(连接)的紧密程度;内聚性是衡量一个模块内部各个元素彼此结合的紧密程度。

一般来说,要求模块之间的耦合尽可能地低,而内聚性尽可能地高。

(4)D 【解析】需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。

选项A)软件开发方法是在总体设计阶段需完成的任务;选项B)软件开发工具是在实现阶段需完成的任务;选项C)软件开发费用是在可行性研究阶段需完成的任务。

(5)A 【解析】算法具有5个特性:①有穷性:一个算法必须(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有限时间内完成,即运行时间是有限的;②确定性:算法中每一条指令必须有确切的含义,读者理解时不会产生歧义;③可行性:一个算法是可行的,即算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现;④输入:一个算法有零个或多个输入,这些输入取自于某个特定的对象的集合;⑤输出:一个算法有一个或多个输出。

(6)D 【解析】在最坏情况下,快速排序、冒泡排序和直接插入排序需要的比较次数都为n(n-1)/2,堆排序需要的比较次数为nlog2n。

(7)B 【解析】由栈"后进先出"的特点可知:A)中e1不可能比e2先出,C)中e1不可能比e2先出,D)中栈是先进后出的,所以不可能是任意顺序。

2013年3月全国计算机等级考试二级C语言上机题库100套完全版aaa

2013年3月全国计算机等级考试二级C语言上机题库100套完全版aaa

2013年3月全国计算机等级考试二级C语言上机题库100套完全版aaa导读:就爱阅读网友为您分享以下“2013年3月全国计算机等级考试二级C语言上机题库100套完全版aaa”的资讯,希望对您有所帮助,感谢您对的支持!第 3 处:{ tl++; /*****found*** ***/ fscanf(fp,”%s%s%s”,str,str1,str2); 2.tt++; 程序修改给定程序MODI1.C 中函数fun 的功能是:对N 名学生的学生成绩,按从高到低的顺序找出前m(m&lt;10) if(tl&gt;sl) return t; 名学生来,将这些学生数据存放在一个动态分配的else return s; 连续存储区中,此存储区的首地址作为函数值返回。

} STU *fun(STU a[ ],int m) { STU b[N],*t; 3. 程序设计int i,j,k; 请编写函数fun,函数的功能是:移动字符串中的/*****found*** ***/ 内容,移动的规则如下:把第 1 到第m 个字符,平t=(STU *)calloc(sizeof(STU),m); 均移到字符串的最后,把第m+1个到最后的;字for(i=0;i&lt;N;i++) 符移到字符串的前部。

void fun(char *w, int m ) for(k=0;k&lt;m;k++) { { for(i=j=0;i&lt;N;i++) int i; if(b[i].s&gt;b[j].s)j=i; /*****found*** ***/ t[k]=b[j]; b[j].s=0; 第七套1.程序填空return t; 程序通过定义并赋初值的方式,利用结构体变量存} 储了一名学生的信息,函数fun 的功能是输出这位学生的信息。

3. 程序设计请编写函数fun,函数的功能是,删去一维数组中第 1 处void show( STU tt) 所有相同的数,使之只剩一个。

全国计算机二级C2013年3月考试真题与答案(打印版)-推荐下载

全国计算机二级C2013年3月考试真题与答案(打印版)-推荐下载

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、 1
B 、0.000001
C、 0
D、 100.0
9、 在黑盒测试方式中,设计测试用例的主要根据是
A、程序外部功能
B、程序内部逻辑
C、程序数据结构
D、程序流程图
10、 在软件设计中不使用的工具是
A、系统结构图
B、程序流程图
C、PAD 图
D、数据流图(DFD 图)
11、针对简单程序设计,以下叙述的实施步骤正确的是
A、确定算法和数据结构、编码、调试、整理文档
20、有以下程序
#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 、8
21、有以下程序
D、只有八进制表示的数在不会有误差
13、以下关于算法叙述错误的是
A、算法可以用伪代码、流程图等多种形式来描述
B、一个正确的算法必须有输入
C、一个正确的算法必须有输出
D、用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码

3月全国计算机二级c语言真题(2)

3月全国计算机二级c语言真题(2)

3月全国计算机二级c语言真题(2)2013年3月全国计算机二级c语言真题(35)以下程序将随机产生n个两位整数,并使用冒泡法将它们按递增顺序排序后输出。

Option Base 1Private Sub Command1_Click()Dim a() As IntegerDim i As Integer, j As IntegerRandomizen = InputBox("输入数据个数")ReDim a(n)For i = 1 To na(i) = Int(Rnd * 90) + 10Next iFor i = 1 To n - 1For j = 1 To n - iIf a(j) < a(j - 1) Thentemp = a(j): a(j) = a(j - 1): a(j - 1) = tempEnd IfNext jNext iFor i = 1 To nPrint a(i);Next iEnd Sub运行以上程序,发现有错误,需要对j循环的开始语句进行修改。

以下正确的修改是二、填空题。

(1)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数为。

(2)设一个队列的初始状态为空。

现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为。

(3)对模块独立性度量的两个定性标准是耦合性与内聚性。

描述模块间互相连接的紧密程度的是。

(4)“软件系统”的系统结构图如下图所示:该系统的最大扇出数是。

(5)数据库设计包括概念设计、和物理设计。

(6)设有如下程序:Option Base 0Private Sub Command1_Click()Dim 或【arr】Dim i As Integerarr = Array(1, 2, 3, 4, 5, 6, 7, 8, 9)For i = 0 To 3Print arrNextEnd Sub当运行程序,并单击命令按钮后,窗体上显示5 4 3 2。

2013年3月份全国计算机等级考试二级C语言_笔试+上机题库(完整版)

2013年3月份全国计算机等级考试二级C语言_笔试+上机题库(完整版)

.全国计算机等级考试二级C语言笔试+上机题库(全)一、选择题在下列各题的A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。

(1)为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为A)PAD图B)N-S图 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(n-1)/2的排序方法是A)快速排序 B)冒泡排序 C)直接插入排序 D)堆排序(7)如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是A)e3,e1,e4,e2 B)e2,e4,e3,e1 C)e3,e4,e1,e2 D) 任意顺序(8)将E-R图转换到关系模式时,实体与联系都可以表示成A)属性 B)关系 C)键 D)域(9)有三个关系R、S和T如下:RB C Da 0 k1b 1 n1SB C Df 3 h2a 0 k1n 2 x1TB C Da 0 k1由关系R和S通过运算得到关系T,则所使用的运算为A)并 B)自然连接 C)笛卡尔积 D)交(10)下列有关数据库的描述,正确的是A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字段D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字(11)以下叙述中正确的是A)用C程序实现的算法必须要有输入和输出操作B)用C程序实现的算法可以没有输出但必须要有输入C)用C程序实现的算法可以没有输入但必须要有输出D)用C程序实现的算法可以既没有输入也没有输出(12)下列可用于C语言用户标识符的一组是A)void, define, WORD B)a3_3,_123,Car C)For, -abc, IF Case D)2a, DO, sizeof(13)以下选项中可作为C语言合法常量的是A)-80 B)-080 C)-8e1.0 D)-80.0e(14)若有语句:char *line[5];,以下叙述中正确的是A) 定义line是一个数组,每个数组元素是一个基类型为char为指针变量B) 定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组C) 定义line是一个指针数组,语句中的*号称为间址运算符D) 定义line是一个指向字符型函数的指针(15)以下定义语句中正确的是A)int a=b=0; B)char A=65+1,b=′b′; C)float a=1,*b=&a,*c=&b;D)double a=00;b=1.1;(16)有以下程序段char ch; int k;ch=′a′;k=12;printf("%c,%d,",ch,ch,k); printf("k=%d \n",k);已知字符a的ASCII码值为97,则执行上述程序段后输出结果是A)因变量类型与格式描述符的类型不匹配输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)a,97,12k=12D)a,97,k=12(17)有以下程序main(){ int i,s=1;for (i=1;i<50;i++)if(!(i%5)&&!(i%3)) s+=i;printf("%d\n",s);}程序的输出结果是A)409 B)277 C)1 D)91(18)当变量c的值不为2、4、6时,值也为"真"的表达式是A)(c==2)||(c==4)||(c==6)B)(c>=2&& c<=6)||(c!=3)||(c!=5)C)(c>=2&&c<=6)&&!(c%2)D)(c>=2&& c<=6)&&(c%2!=1)(19)若变量已正确定义,有以下程序段int a=3,b=5,c=7;if(a>b) a=b; c=a;if(c!=a) c=b;printf("%d,%d,%d\n",a,b,c);其输出结果是A)程序段有语法错 B)3,5,3 C)3,5,5 D)3,5,7 (20)有以下程序#include <stdio.h>main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ case 0:a++; break;case 1:b++; break;}case 2:a++; b++; break;case 3:a++; b++;}printf("a=%d,b=%d\n",a,b);}程序的运行结果是A)a=1,b=0 B)a=2,b=2 C)a=1,b=1 D)a=2,b=1(21)下列程序的输出结果是#include "stdio.h"main(){ int i,a=0,b=0;for(i=1;i<10;i++){ if(i%2==0){a++;continue;}b++;}printf("a=%d,b=%d",a,b); }A)a=4,b=4 B)a=4,b=5 C)a=5,b=4 D)a=5,b=5(22)已知#int t=0;while (t=1){...}则以下叙述正确的是A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以上说法都不对(23)下面程序的输出结果是main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}A)3 B)4 C)1 D)2(24)以下错误的定义语句是A)int x[][3]={{0},{1},{1,2,3}}; B)int x[4][3]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}};C)int x[4][]={{1,2,3},{1,2,3},{1,2,3},{1,2,3}}; D)int x[][3]={1,2,3,4}; (25)有以下程序void ss(char *s,char t){ while(*s){ if(*s==t)*s=t-′a′+′A′;s++; } }main(){ char str1[100]="abcddfefdbd",c=′d′;ss(str1,c); printf("%s\n",str1);}程序运行后的输出结果是A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd(26)有如下程序main(){ char ch[2][5]={"6937","8254"},*p[2];int i,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>′\0′;j+=2)s=10*s+p[i][j]-′0′;printf("%d\n",s);}该程序的输出结果是A)69825 B)63825 C)6385 D)(27)有定义语句:char s[10];,若要从终端给s输入5个字符,错误的输入语句是A)gets(&s[0]); B)scanf("%s",s+1); C)gets(s); D)scanf("%s",s[1]); (28)以下叙述中错误的是A)在程序中凡是以"#"开始的语句行都是预处理命令行 B)预处理命令行的最后不能以分号表示结束 C)#define MAX 是合法的宏定义命令行 D)C程序对预处理命令行的处理是在程序执行的过程中进行的(29)设有以下说明语句typedef struct{ int n;char ch[8];} PER;则下面叙述中正确的是A)PER 是结构体变量名 B)PER是结构体类型名 C)typedef struct 是结构体类型D)struct 是结构体类型名(30)以下叙述中错误的是A)gets函数用于从终端读入字符串 B)getchar函数用于从磁盘文件读入字符C)fputs函数用于把字符串输出到文件 D)fwrite函数用于以二进制形式输出数据到文件(31)以下能正确定义一维数组的选项是A)int a[5]={0,1,2,3,4,5}; B)char a[]={′0′,′1′,′2′,′3′,′4′,′5′,′\0′}; C)char a={′A′,′B′,′C′}; D)int a[5]="0123";(32)有以下程序#include<string.h>main(){ char p[]={′a′, ′b′, ′c′},q[10]={ ′a′, ′b′, ′c′};printf("%d%d\n",strlen(p),strlen(q));}以下叙述中正确的是A) 在给p和q数组置初值时,系统会自动添加字符串结束符,故输出的长度都为3B) 由于p数组中没有字符串结束符,长度不能确定,但q数组中字符串长度为3C) 由于q数组中没有字符串结束符,长度不能确定,但p数组中字符串长度为3D) 由于p和q数组中都没有字符串结束符,故长度都不能确定(33)有以下程序#include <stdio.h>#include <string.h>void fun(char *s[],int n){ char *t; int i,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strlen(s[i])>strlen(s[j])) {t=s[i];s[i]:s[j];s[j]=t;}}main(){ char *ss[]={"bcc","bbcc","xy","aaaacc","aabcc"};fun(ss,5); printf("%s,%s\n",ss[0],ss[4]);}程序的运行结果是A)xy,aaaacc B)aaaacc,xy C)bcc,aabcc D)aabcc,bcc(34)有以下程序#include <stdio.h>int f(int x){ int y;if(x==0||x==1) return(3);y=x*x-f(x-2);return y;}main(){ int z;z=f(3); printf("%d\n",z);}程序的运行结果是A)0 B)9 C)6 D)8(35)下面程序段的运行结果是char str[]="ABC",*p=str;printf("%d\n",*(p+3));A)67 B)0 C)字符′C′的地址 D)字符′C′(36)若有以下定义:struct link{ int data;struct link *next;} a,b,c,*p,*q;且变量a和b之间已有如下图所示的链表结构:指针p指向变量a,q指向变量c。

2013年计算机二级考试真题卷(3)

2013年计算机二级考试真题卷(3)

2013年核算机二级考试真题卷•本卷共分为1大题50小题,作答时刻为180分钟,总分100分,60分及格。

一、单项挑选题(共50题,每题2分。

每题的备选项中,只要一个最契合题意)1.下列程序段履行的成果为____ Dim m(10) For I=9 to 10 For j=1 to 2 m(I)=j Next j Next I Print m(9);m(10) A:1 1B:1 2C:2 1D:2 2参考答案:D2.设x=3,y=-4,z=6,写出表达式的成果。

!(x》y)+(y!=z)||(x+y)&&(y-z)A:0B:1C:-1D:6、参考答案:B3.对窗体编写如下事情进程Private Sub Form_MouseDown(Button As Integer, _Shift As Integer, X As Single ,Y As Single)If Button =2 Then Print "AAAAA"End If End Sub Private Sub Form _ MouseUp(Button As Integer, _Shift As Integer, X As Single, Y As Single)Print "BBBBB"End Sub程序运转后,假如单击鼠标右键,则输出成果为____A:)AAAAA BBBBBB:)BBBBB AAAAAC:)AAAAAD:)BBBBB参考答案:A4.当程序运转时,体系主动履行发动窗体的____事情进程。

A:ClickB:LoadC:UnloadD:GotFocus参考答案:B5.核算机病毒实质上是____A:细菌感染B:一组指令的调集C:被损坏的程序D:体系文件参考答案:B6.设有界说double a[10],*s=a;,一下能够代表数组元素a[3]的是A:(*s)[3]B:*(s+3)C:*s[3]D:*s+3参考答案:B7.翻开通用对话框的“另存为”对话框的办法是____A:ShowOpenB:ShowSaveC:ShowColorD:ShowFont参考答案:B8.在规划阶段,双击窗体上的某个控件,能够翻开____A:代码窗口B:特点窗口C:东西箱窗口D:工程资源管理器窗口参考答案:A9.指令按钮的单击事情是____A:ValueB:DblClick( )C:NameD:Click( )参考答案:D10.在当时已翻开的表中,履行下列指令序列后,显现成果为____GO TOPSKIP 5GOTO 6SKIP-2?RECNO____A:6B:5C:4D:3参考答案:C11.以下程序段的输出成果是____ X=13:y=15 a=x-y if x>=y then a=y else a=a-y Print aA:-2B:F2C:N13D:-17参考答案:D12.在Windows界面下,当一个窗口最小化后,其图标坐落A:标题栏B:东西栏C:任务栏D:菜单栏参考答案:C13.设变量a是int型,f是float型,i是double型,则表达式10+′a′+i*f值的数据类型为A:)intB:)floatC:)doubleD:)不确定参考答案:C14.阅览下列代码段Int i= 3, j ;Outer:while(i>0){j = 3 ;inner: while (j>0) {if (jA:3and3B:3and2C:3and1D:3and0参考答案:A15.若要求向文本框输入暗码时,只在文本框中显现*号,则应当在此文本框的特点窗口中设置____A:Text特点值为 *B:Caption特点值为 *C:PasswordChar特点值为空D:PasswordChar特点值为 *参考答案:D16.设int a=5,使b不为2的表达式是____A:b=6-(--a)B:b=a%2C:b=a/2D:b=a>3?2:1参考答案:B17.窗体上有一个指令按钮Command1,编写如下事情进程Private Sub Command1_Click____Dim i%, j%For i = 1 To 3For j = 0 To iPrint Chr$(48 + i);Next jPrintNext iEnd Sub运转时,单击按钮,输出成果是____A:123B:1 22 333C:11 222 3333D:0 11 222 3333参考答案:C18.一下叙说过错的是____A:翻开一个工程文件时,体系主动装入与该工程有关的窗体等文件。

2013年3月计算机二级C语言上机试题题库答案

2013年3月计算机二级C语言上机试题题库答案

第一套1. 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,删除所有串长超过k的字符串,函数返回所剩字符串的个数。

Ss所指字符串数组中共有N个字符串,且串长小于M。

1 N2 k3 ss[i]2. 给定程序MODI1.C中函数fun的功能是:逐个比较p、q所指两个字符串对应位置中的字符,把ASCII值或相等的字符依次存放在c所指数组中,形成一个新的字符串。

1 int k=0;2 while(*p||*q)3. 假定输入的字符串中只包含字母和*号。

请编写函数fun,它的功能是:除了字符串前导*号之外,将串中其它*号全部删除。

在编写函数时,不得使用C语言提供的字符串函数。

函数fun中给出的语句仅供参考。

int i=0;char *p=a;while(*p&&*p=='*'){ a[i]=*p;i++;p++;}while(*p){ if(*p!='*'){a[i]=*p;i++;}p++;}a[i]='\0';第二套1. 给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。

函数fun的功能是:把形参x的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序。

1 x2 p3 s2. 给定程序MODI1.C中函数fun的功能是:计算正整数num的各位上的数字之积。

1 long k=1;2 num/=103. 请编写函数fun,它的功能是:计算n门课程的平均分,计算结果作为函数返回。

int i;float ave=0.0;for(i=0;i<n;i++)ave=ave+a[i];ave=ave/n;return ave;第三套1. 给定程序中,函数fun的功能是:在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到输出相应信息。

Ss所指字符串数组中共有N个字符,且串长小于M。

2013年全国计算机二级C语言考试真题

2013年全国计算机二级C语言考试真题

1、对于一个正常运行的C程序,以下叙述中确的是A)程序的执行总是从main 涵数开始B)程序的执行总是从程序的笫一个函数开始,在程序的最后一个函数中结束C)程序的执行总是从main函数幵始,在程序的最后一个函数中结束D)程序的执行总是从程序的笫一个函数开始,在main函数结束3、若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是A)x+1=yB) x=x+10=x+yC)double (x)/10D)++x,y=x--4、以下选项中能表示合法常量的是A)‟\‟B)1,200C)1.5E2.0D)”\007”5、以下定义语句中正确的是A) double a=0.0;b=1.1;B) float a=1,*b=&a,*c=&b;C) int a=b=0;D) char A=65+1,b=‟b‟7、若变量已正确定义为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<回车>8、当变量c的值不为2、4、6时,值也为“真”的表达式是()A (c>=2&&c<=6)&&(c%2!=1)B) (c>=2&&c<=6)&&!(c%2) )C) (c==2)‖(c==4)‖(c==6)D) (c>=2&&c<=6)‖(c!=3)‖(c!=5)9、以下选项中,值为1的表达式是A) …\0‟-…0‟B)‟1‟-0C)1-…0‟D)1- 030、以下选项中,不合法的C语言用户标识符是A a——bB AaBcC _1D a_b31. 以下选项中关于C语言常量的叙述错误的是A经常被使用的变量可以定义成常量B 所谓常量,是指在程序运行过程中,其值不能被改变的量C常量可分为数值型常量和非数值型常量D常量分为整型常置、实型常量、字符常量和字符串常量34、以下叙述中正确的是A C语句必须在一行内写完B C语言程序中的注释必须与语句写在同一行C C程序中的每一行只能写一条语句D 简单C语句必须以分号结束37、以下选项中不能作为C语言合法常量的是A ‟cd‟B‟\011‟ C 0.le+6 D "\a"58、以下选项中不能用作C程序合法常量的是A."\x7D"B.1,234C.123D.'\123'60、C语言源程序名的后缀是A) . cpB) .objC) .exeD) .C61、阅读以下程序#include <stdio .h>main (){ int case ;float printF;printf ("请输入2个数:");scanf ( "%d %f",&case, &printF );printf("%d %f\n",case,printF );}该程序在编译时产生错误,其出错原因是A.定义语句出错,case是关键字,不能用作用户自定义标识符B.定义语句无错,printf不能输出case的值C.定义语句无错,scanf不能作为输入函数使用D.定义语句出错,printF不能用作用户自定义标识符62.若有定义语句:int x=12,y=8, z;在其后执行语句z= 0.9+x/y;则z的值为A.2.4B.1C.2D.1.963. 表达式a+=a-= a=9的值是A.-9B.0D.1868. 以下选项中非法的c语言字符常量是A.'\b'B.'\xaa'C.'\007'D.'aa'72. 以下叙述中正确的是A.英文大写字母X和荚文小写字母x都可以作为二进制数字的开头字符B.八进制数的开头要使用英文字母o,否则不能与十进制区分开C. 在C程序中的八进制和十六进制,可以是浮点数D.整型变量可以分为int型、short型、long型和unsigned型四种79. 以下选项中,当x为大于1奇数时,值为0的表达式是A.x%2==0B.x%2==lC.x%2!=0D.x/2101. 以下选项中不能作为c语言合法常量的是A.'cd'B.'\011'C.0.le+6D."\a"104. 以下选项中不能用作C程序合法常量的是A"\x7D"B.1,234C.123D.'\123'134. 若有定义语句:char a='\82 ';则变量aA.包含3个字符B.说明不合法C.包含1个字符D.包含2个字符135. 有以下程序#include <stdio.h>main (){char cl='A',c2='Y';printf ("%d,%d\n", cl,c2 );}程序的输4结果是A.输出格式不合法,输出出错信息B.65.89D.65.90154. 以下选项中,能用作数据常量的是A.115LB.0118C.0115D.1.5el.5155. 设变量已正确定义并赋值,以下正确的表达式是A.x=y*5=x+zB.int(15.8%5)C.x-25%5.0D.x=y+z+5,++y185. 有以下程序#include <stdio.h>main(){ char a='H';a = ( a>='A' && a<= 'Z' ) ? (a+32) : a;printf("%c\n",a );}程序运行后的输出结果是A) AB) aC) hD) H194. 以下叙述中正确的是A)程序可以包含多个主函数,但总是从第一个主函数处开始执行B)书写源程序时,必须注意缩进格式,否则程序会有编译错误C)程序的主函数名除main外,也可以使用Mainl或_mainD)在C程序中,模块化主要是通过函数来实现的199. 以下叙述中正确的是A)字符变量在定义时不能赋初值B)同一英文字母的大写和小写形式代表的是同一个字符常量C)转义字符用@符号开头D)字符常量可以参与任何整数运算200. 以下叙述中正确的是A)"a"表示一个字符常量B)"\"是非法的C)'\0'表示字符0D)表达式:'a'>'b'的结果是"假"202. 以下叙述中正确的是A)由&&构成的逻辑表达式与由||构成的逻辑表达式都有"短路"现象B)C语言的关系表达式:0<x<10完全等价于:(0<x)&& (x<10)C)逻辑"或"(即运算符||)的运算级别比算术运算要高D)逻辑"非〃〈即运算符!)的运算级别是最低的219. c源程序中不能表示的数制是A) 八进制B)十六进制C)十进制D) 二进制221. 以下四个程序中,完全正确的是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"); }222. 若有定义语句:int x=10;则表达式x-=x+x的值为A) 10B) -10C) -20D) 0224. 己知大写字母A的ASCII码是65’小写字母a的ASCII码是97。

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

全国计算机等级考试二级C语言真题2013年3月(总分40, 做题时间90分钟)一、选择题1. 程序流程图中带有箭头的线段表示的是______。

A 图元关系B 数据流C 控制流D 调用关系答案:C[解析] 在数据流图中,用标有名字的箭头表示数据流。

在程序流程图中,用标有名字的箭头表示控制流。

所以选择C。

2. 结构化程序设计的基本原则不包括______。

A 多态性B 自顶向下C 模块化D 逐步求精答案:A[解析] 结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用goto语句,所以选择A。

3. 软件设计中模块划分应遵循的准则是______。

A 低内聚低耦合B 高内聚低耦合C 低内聚高耦合D 高内聚高耦合答案:B[解析] 软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖关系适当等。

模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。

模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。

4. 在软件开发中,需求分析阶段产生的主要文档是______。

A 可行性分析报告B 软件需求规格说明书C 概要设计说明书D 集成测试计划答案:B[解析] A错误,可行性分析阶段产生可行性分析报告。

C错误,概要设计说明书是总体设计阶段产生的文档。

D错误,集成测试计划是在概要设计阶段编写的文档。

B正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。

5. 算法的有穷性是指______。

A 算法程序的运行时间是有限的B 算法程序所处理的数据量是有限的C 算法程序的长度是有限的D 算法只能被有限的用户使用答案:A[解析] 算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。

有穷性是指算法程序的运行时间是有限的。

6. 对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是______。

A 快速排序B 冒泡排序C 直接插入排序D 堆排序答案:D[解析] 除了堆排序算法的比较次数是O(nlog2n),其他的都是n(n-1)/2。

7. 下列关于栈的叙述正确的是______。

A 栈按“先进先出”组织数据B 栈按“先进后出”组织数据C 只能在栈底插入数据D 不能删除数据答案:B[解析] 栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。

8. 在数据库设计中,将E-R图转换成关系数据模型的过程属于______。

A 需求分析阶段B 概念设计阶段C 逻辑设计阶段D 物理设计阶段答案:C[解析] 将E-R图转换成关系模型数据是把图形分析出来的联系反映到数据库中,即设计出表,所以属于逻辑设计阶段。

9. 有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为______。

A 并B 自然连接C 笛卡儿积D 交答案:D[解析] 自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,所以B错误。

笛卡儿积是用R集合中元素为第一元素,S集合中元素为第二元素构成的有序对,所以C错误。

根据关系T可以很明显地看出其是从关系R与关系S中取得相同的关系组成,所以运用的是交运算,选择D。

10. 设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为______。

A 课号,成绩B 学号,成绩C 学号,课号D 学号,姓名,成绩答案:C[解析] 学号是学生表S的主键,课号是课程表C的主键,所以选课表SC的关键字就应该是与前两个表能够直接联系且能唯一定义的学号和课号,所以选择C。

11. 以下叙述中错误的是______。

A C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令B C程序经过编译、连接步骤之后才能形成一个真正可执行的二进制机器指令文件C 用C语言编写的程序称为源程序,它以ASCII代码形式存放在一个文本文件中D C语言源程序经编译后生成后缀为.obj的目标程序答案:A[解析] C语言中的非执行语句不会被编译,不会生成二进制的机器指令,所以A错误。

由C语言构成的指令序列称为C源程序,C源程序经过C语言编译程序编译之后生成一个后缀为.OBJ的二进制文件(称为目标文件);最后要由“连接程序”把此.OBJ文件与C语言提供的各种库函数连接起来生成一个后缀为.EXE的可执行文件。

12. 以下选项中,合法的一组C语言数值常量是______。

A 12. 0Xa23 4.5e0B 028 .5e-3 -0xfC .177 4e1.5 0abcD 0x8A 10,000 3.e5答案:A[解析] C语言中八进制整型常量的开头是数字0,十六进制整型常量的开头数字是0x。

C语言中的实型常量有两种表示形式:小数形式,小数形式表示的实型常量必须要有小数点;指数形式,以“e”或“E”后跟一个整数来表示以10为底数的幂数,且规定字母e或E之前必须要有数字,且e或E后面的指数必须为整数。

B选项中028错误,八进制中没有数字8。

C选项中4e1.5中e后面的指数不是整数。

D选项中3.e5小数点后面缺少数字。

13. 以下选项中不合法的标识符是______。

A &amp;aB FORC printD _00答案:A[解析] C语言中标识符由字母、下划线、数字组成,且开头必须是字母或下划线。

另外,关键字不能作为标识符。

因为C语言中区分大小写,所以B选项中的“FOR”可以作为标识符来用。

A选项中含有非法字符&,所以选择A。

14. 若有代数式(其中e仅代表自然对数的底数,不是变量),则以下能够正确表示该代数式的C语言表达式是______。

A sqrt(fabs(pow(n,x)+exp(x)))B sqrt(fabs(pow(n,x)+pow(x,e)))C sqrt(abs(n^x+e^x))D sqrt(fabs(pow(x,n)+exp(x)))答案:A[解析] B选项中函数pow(x,e)错误,应该直接使用exp(x)函数。

C选项中函数abs(n^x+e^x)错误,应该使用fabs()返回浮点数的绝对值。

D选项中pow(x,n)参数顺序错误。

15. 若有定义:double a=22; int i=0, k=18; ,则不符合C语言规定的赋值语句是______。

A i=(a+k)<=(i+k);B i=a%11;C a=a++, i++;D i=!a;答案:B[解析] 取模运算符“%”为二元运算符,具有左结合性,并且参与运算的量应均为整型。

选项B中的a变量是double实型,所以B不符合规定。

16. 有以下程序:#include <stdio.h>main() { int s, t, A=10; double B=6; s=sizeofA.; t=sizedB.; printf(&quot;%d, %d\n&quot;, s, t); }在VC 6.0平台上编泽运行,程序运行后的输出结果是______。

A 10,6B 4,4C 2,4D 4,8答案:D[解析] C语言中利用sizeof()函数判断数据类型长度,在VC 6.0平台中,整型int占有4个字节,double型数据占有8个字节。

17. 有以下程序:#include <stdio.h>main() { char a, b, c,d; scanf(&quot;%c%c&quot;, &amp;a, &amp;b); c=getchar();d=getchar(); printf(&quot;%c%c%c%c\n&quot;, a, b, c, d); } 当执行程序时,按下列方式输入数据(从第1列开始,<CR>代表回车,注意:回车也是一个字符) 12<CR>34<CR>则输出结果是______。

A 1234B 12D 123答案:D[解析] 按照从键盘输入的数据可以判断字符1给了变量a,字符2给了变量b,字符<CR>即回车给了变量c,字符3给了变量d。

所以打印输出的结果为D选项。

18. 以下关于逻辑运算符两侧运算对象的叙述中正确的是______。

A 可以是任意合法的表达式B 只能是整数0或非0整数C 可以是结构体类型的数据D 只能是整数0或1答案:A[解析] C语言的逻辑运算符比较特别,它的操作数没有明确的数据类型,可以是任意合法的表达式,所以选择A。

19. 有以下程序:#include <stdio.h>main() { int a=0, b=0, c=0, d=0; if(a=1)b=1; c=2; else d=3; printf(&quot;%d, %d, %d, %d\n&quot;, a, b, c, d); } 程序输出______。

A 1,1,2,0B 0,0,0,3C 编译有错D 0,1,2,0[解析] 本题中if(a=1)b=1; 与else d=3; 之间多了语句c=2; ,所以会出现else语句的位置错误的编译失败提示。

20. 有以下程序:#include <stdio.h>main() { int x=1, y=0, a=0, b=0; switch(x) { ease 1: switch(y) { case 0: a++; break; case 1: b++; break; } case 2: a++; b++; break; case 3: a++;b++; } printf(&quot;a=%d, b=%d\n&quot;, a, b); } 程序的运行结果是______。

A a=2, b=2B a=2, b=1C a=1, b=1D a=1, b=0答案:B[解析] case常量表达式只是起语句标号作用,并不是该处进行条件判断。

在执行switch 语句时,根据switch的表达式,找到与之匹配的case语句,就从此case子句执行下去,不再进行判断,直到碰到break或函数结束为止。

所以执行内层switch(y)时只执行了a++,此时a的值为1。

然后执行外层case 2语句的a++;b++;则a为2,b为1。

所以结果为B。

21. 以下程序段中的变量已正确定义:______ for(i=0; i<4; i++,i++ ) for(k=1; k<3; k++); printf(&quot;*&quot;); 程序段的输出结果是______。

A * *B * * * *C *D * * * * * * * *答案:C[解析] 由于内层循环for(k=1; k<3; k++)后而直接跟了空语句“;”,所以在循环内部什么操作也不做,跳出外层循环后执行打印语句,所以打印了一个“*”,因此选择C。

相关文档
最新文档