全国计算机等级考试二级C语言真题题库2+2014年3月

全国计算机等级考试二级C语言真题题库2+2014年3月
全国计算机等级考试二级C语言真题题库2+2014年3月

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

(总分43, 做题时间120分钟)

一、选择题(每小题1分,共40分)

1. 下列叙述中正确的是()。

A 每一个节点有两个指针域的链表一定是非线性结构

B 所有节点的指针域都为非空的链表一定是非线性结构

C 循环链表是循环队列的链式存储结构

D 线性结构的存储节点也可以有多个指针

答案:D

[解析]一个非空的数据结构如果满足以下两个条件:有且只有一个根节点;每一个节点最多有—个前件,也最多有一个后件,则称为线性结构,在数据结构中习惯称为线性表。双向链表节点具有两个指针域,属于线性结构,故A选项错误。循环链表所有节点的指针域都为非空,属于线性结构,故B选项错误。循环链表是链表,循环队列属于队列,队列只能在队尾入队,在排头退队,链表可以在任何位置插入、删除,故C选项错误。双向链表节点具有多个指针域,故D选项正确。

2. 使用白盒测试方法时,设计测试用例应根据()。

A 程序的内部逻辑

B 程序的复杂结构

C 程序的功能

D 使用说明书

答案:A

[解析]白盒测试又称为结构测试或逻辑驱动测试,它允许测试人员利用程序内部的逻辑结构及有关信息来设计或选择测试用例,对程序所有的逻辑路径进行测试,故A选项正确。

3. 在医院,每个医生只属于某一个诊疗科,医生同一天可为多位患者看病,而一名患者可在多个科室治疗,则实体医生和患者之间的联系是()。

A 多对多

B 多对一

C 一对多

D 一对一

答案:A

[解析]一般来说,实体集之间必须通过联系来建立连接关系,分为三类:一对一联系(1:1)、一对多联系(1:m)、多对多联系(m:n)。医生可为多位患者看病,患者也可以找多位医生看病,实体医生与患者联系是多对多,故A选项正确。

4. 设序列长度为n,在最坏情况下,时间复杂度为O(log2n)的算法是()。

A 二分法查找

B 顺序查找

C 分块查找

D 哈希查找

答案:A

[解析]对长度为n的线性表排序,最坏情况下时间复杂度,二分法查找为O(log2n);顺序查找法为O(n);分块查找时间复杂度与分块规则有关;哈希查找时间复杂度为O(1),因其通过计算HashCode来定位元素位置,所以只需一次即可。故正确答案为A选项。

5. 设数据集合为D={1,3,5,7,9},D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是()。

A R={ (5,1),(7,9),(1,7),(9,3)}

B R={ (9,7),(1,3),(7,1),(3,5)}

C R={ (1,9),(9,7),(7,5),(5,3)}

D R={ (1,3),(3,5),(5,9)}

答案:D

[解析]一个非空的数据结构如果满足以下两个条件:有且只有一个根节点;每一个节点最多有一个前件,也最多有一个后件,则称为线性结构,在数据结构中习惯称为线性表。A 选项中,5为根节点,线性表为51793。B选项中,9为根节点,线性表为97135。C选项中,1为根节点,线性表为19753。D选项中,节点1与7都是根节点,属于非线性结构,故D选项正确。

6. 深度为7的二叉树共有127个节点,则下列说法中错误的是()。

A 该二叉树有一个度为1的节点

B 该二叉树是满二叉树

C 该二叉树是完全二叉树

D 该二叉树有64个叶子节点

答案:A

[解析]在树结构中,一个节点所拥有的后件个数称为该节点的度,所有节点中最大的度称为树的度。完全二叉树指除最后一层外,每一层上的节点数均达到最大值,在最后一层上只缺少有边的若干节点。满二叉树指除最后一层外,每一层上的所有节点都有两个子节点的二叉树。深度为7的二叉树,前6层共有节点个数为26-1=63,则第7层有127-63=64个节点,即第7层节点数达到最大值,故此二叉树为满二叉树,也是完全二叉树,该二叉树没有度为1的节点,有64个叶子节点。故正确答案为A选项。

7. 二叉树的中序序列为BDCA,后序序列为DCBA,则前序序列为()。

A DCBA

B BDCA

C ABCD

D BADC

答案:C

[解析]二叉树遍历可以分为3种:前序遍历(访问根节点在访问左子树和访问右子树之前)、中序遍历(访问根节点在访问左子树和访问右子树两者之间)、后序遍历(访问根节点在访问左子树和访问右子树之后)。本题中中序序列为BDCA,后序序列为DCBA,可知A为根节点,BDC为左侧节点,C是B右子节点,D是C右子节点,故前序序列为ABCD,C 选项正确。

8. 下面能作为软件需求分析工具的是()。

A PAD图

B 程序流程图

C 甘特图

D 数据流程图(DFD图)

答案:D

[解析]软件需求分析方法包括结构化分析方法和面向对象的分析方法两大类,前者常用工具为数据流图(DFD)、数据字典(DD)、判定表、判定树等。故D选项正确。选项B是软件功能实现时设计图。

9. 下面不属于对象主要特征的是()。

A 唯一性

B 多态性

C 可复用性

D 封装性

答案:C

[解析]对象的基本特点如下表所示。

可知C选项正确。

10.

A (c,c,11,4)

B (e,e,6,1)

C (a,a,2,4)

D (a,a,2,4)和(e,e,6,1)

答案:A

[解析]从关系中找出满足给定条件的元组的操作称为选择,“∧”为交运算,它由属于前

者且属于后者的元组组成。题目为选出属于属性B,同时属性C大于4,并且属性D大于3的元组,结果为(c,c,11,4),应保留全部属性。故A选项正确。

11. C语言整数不包括()。

A 带小数点的整数

B 正整数

C 负整数

D 无符号整数

答案:A

[解析]C语言整数包括正整数、负整数、无符号整数、不含带小数点的整数,故答案为A选项。

12. 设a,b,c是整型变量,且已正确赋初值,以下选项中错误的赋值语句是()。

A a=1%(b=c=2);

B a=(b=3)*c

C a=b=c/10

D a=2=(b=9)=1

答案:D

[解析]D选项中,“()”具有最高优先级,b先赋值9,再根据赋值运算符号白右向左进行赋值,再给b赋值为1,再计算2=b,赋值运算符左边必须是一个变量,但数值2是常量,语法错误,故答案为D选项。

13. 以下选项中,合法的实数是()。

A 1.5E2

B E1.1

C 2.10E

D 1.9E1.4

答案:A

[解析]E表示“10的幂次”,E的右侧必须是整数,排除B、C、D选项、答案为A选项。

14. 关于程序设计基本概念,以下叙述错误的是()。

A 计算机可以直接执行由任意高级语言编写的程序

B 高级语言都有与之对应的编译程序或解释程序

C 用任何一种计算机高级语言都可以把算法转换为程序

D 结构化算法可以解决任何复杂的问题

答案:A

[解析]计算机只能识别机器语言,不能直接识别由高级语言编写的程序,故答案为A选项。

15. 以下不能用于实型数据的运算符是()。

A %

B /

C *

D +

答案:A

[解析]“%”符号两边必须是整数,因此答案为A选项。

16. C语言中,最基本的数据类型包括()。

A 整型、实型、逻辑型

B 整型、字符型、数组

C 整型、实型、字符型

D 整型、实型、结构体

答案:C

[解析]C语言中,最基本的数据类型包括整型、实型、字符型,答案为C选项。

17. 若有定义:int=0,b=0,c=0,d=0;,有C语言表达式(a++&&b++)?c++:d++,以下关于其执行顺序的叙述正确是()。

A 先执行a++,表达式a++的值为0,短路,得a++,执行它

B 先执行a++,表达式a++的值为0;再执行b++,表达式b++的值为0,由此可确定(a++&&b++)值为0,因此执行d++

C 先执行a++,表达式a++的值为1;再执行b++,表达式b++的值为1,由此可确定(a++&&b++)值为1,由此可确定(a++&&b++)值为1,因此执行c++

D 先执行b++,表达式b++的值为1;再执行a++,表达式a++的值为1,由此可确定(a++&&b++)值为1,因此执行c++

答案:A

[解析]表达式1?表达式2:表达式3,若表达式1为真,则执行表达式2,否则执行表达式3。逻辑与运算符遵循“短路求值”策略,即只有在仅靠左操作数的值无法确定该逻辑表达式的结果时,才会求解右操作数,表达式(a++&&b++)中,左操作数a++的值为0,已经可以确定整个逻辑表达式的结果为0,因此右操作数b++不再求解,直接执行表达式3,即d++,答案为A选项。

18. 有以下程序:程序运行后的输出结果是()。

A 123

B ABC

C abc

D 012

答案:A

[解析]当满足ch<'E',输出ch-'A',即字符在ASCII码相减进行输出,%d表示输出十进制整数。循环开始,ch=’B’,print(“%d”,ch-'A')=1,以此类推,答案为A选项。

19. 以下关于指针的叙述,错误的是()。

A 两个基类型相同的指针变量不能指向同一个对象

B 可以通过对指针变量自增、自减来移动指针

C 只有两个类型相同的指针才能进行减运算

D 一个指针变量可以通过不同的方式获得一个确定的地址值

答案:A

[解析]只要两个指针变量基类型相同,可以指向同一个对象,故答案为A选项。

20. 对于函数声明:void fun(float array[],int *ptr);以下叙述正确的是()。

A 调用函数时,array数组的元素和Ptr都是按值传送

B 函数声明有语法错误,参数array缺少数组大小定义

C 调用函数时,array数组中将存储从实参中复制来的元素值

D 函数参数array,ptr都是指针变量

答案:D

[解析]void fun(float array[],int *ptr)定义了2个形参:array[]和*ptr,其中函数形参中int array[]其实相当于int *array,答案为D选项。

21. 有以下程序:

程序运行后的输出结果是()

A 1,0,2,0,0,9

B 1,2,4,9,6,0

C 2,9,0,0,1,4

D 1,2,0,1,4,1

答案:A

[解析]本题定义一个4行2列数组,其中赋值6个数,其余自动为0,根据for循环,第一次输出第一列前三行数,分别是1,0,2;第二次输出第二列前三行数,分别是0,0,9,因此答案为A选项。

22. 要求定义一个具有6个元素的int型一维数组,以下选项中错误的是()。

A int N=6,a[N];

B int a[2*3] ={0};

C #define N 3

int a[N=N];

D int a[] ={1,2,3,4,5,6};

答案:A

[解析]数组名后面括号内,必须是整型常量,不可以是变量,A选项定义错误,答案为A选项。

执行时若输入以下字符串:Peach flower is Pink.<回车>则输出结果是()。

A Peachflower is pink.

B Peachfloweris Pink.

C Peachflowerispink.

D Peach flower is pink.

答案:A

[解析]由于用“%s”格式输出字符串时,是以空格作为间隔符,因此,输入给b[0]=“Peach”,b[1]=“flower”,而while语句给c赋值时,getchar()能识别空格符,b[2]=“is Pink”,答案为A选项。

程序运行后的输出结果是()。

Aagmrw

B ekpuy

C djotx

D flqvz

答案:B

[解析]在for循环中,执行完while语句后,j值为每行字符串的长度,此时a[i][j-1]为字符串数组每个元素的最后一个字符,a[i][j-2]为倒数第二个字符。因此w[i]=a[i][j—2],比如i=0;j=6,则w[0]=a[0][4]=’e’,循环依次赋值,最后输出’y’,答案为B选项。

程序运行后的输出结果是()。

A 9,7,4,7

B 8,6,9,6

C 8,6,3,6

D 10,8,5,8

答案:A

[解析]由于name是一个长度为9的一维数组,故在内存中占用9字节长度,而其中字符串“c##line”只有7个字符,strlen()函数返回的是该字符串的长度,不包含结束符,str是一个指针变量,占用4字节长度,但是由于name首地址赋给了str指针变量,在调用strlen()函数时,返回的是指针对应地址单元的字符串的长度7,因此答案为A选项。

26. 有以下程序:

程序运行时,从键盘输入2<回车>,输出结果是()。

A #y#k#p#f

B #wi#nd#

C xj#oe

D #2222#

答案:A

[解析]首先定义了—个指针P指向数组的首地址,在while语句中,执行功能是如果当前指针指向地址单元内字符不等于空字符’\0’,则输'#'和指针对应地址元素的值在ASCII

码加2后变换的字符常量,因此,答案为A选项。

27. 若有定义:char*ps[]={“aa”,“bb”,“cc”,“dd“};,则以下叙述正确的是()。

A ps[0]是字符串”aa”

B *ps[0]是字符串“aa”的首地址

C ps[0]是字符串”aa”的首地址

D *ps[0]是字符串“aa”

答案:C

[解析]定义一个字符串数组指针ps后,ps是指针变量,ps[0]指向的是数组首个元素的地址,即字符串“aa”的首地址,答案为C选项。

28. 若有定义:char*ps[]={“aa”,“bb”,“cc”,“dd”};,则以下叙述正确的是()。

A *ps[0]是字符'a'

B *ps[0]是字符串“aa”

C ps[0]是字符'a'

D ps是字符串“aa”

答案:A

[解析]指针数组ps[]定义后,ps[0]代表数组首个元素的地址,即“aa”的地址,同时也是“aa”第一个字符a的地址,所以*ps[0]代表字符a,答案为A选项。

29. 以下合法的转义字符是()。

A '\0X41'

B '\0X41'

C '\X41'

D '\X41'

答案:D

[解析]“\xhh”表示1到2位十六进制所代表的字符,故答案为D选项。

30. 在源程序的开始处加上”#include”进行文件引用的原因,以下叙述正确的是()。

A stdio.h文件中包含标准输人输出函数的函数说明,通过引用此文件以便能正确使用printf、scanf等函数

B 将stdio.h中标准输入输出函数链接到编译生成的可执行文件中,以便能正确运行

C 将stdio.h中标准输入输出函数的源程序插入到引用处,以便进行编译链接

D 将stdio.h中标准输入输出函数的二进制代码插入到引用处,以便进行编译链接

答案:A

[解析]“stdio.h”文件中包含标准输入输出函数的函数说明,预处理指令#include<stdio.h>是指程序可以在该文件中找到printf、scanf等函数,因此答案为A选项。

31. 设有定义:int a[10]={0,1,2,3,4,5,6,7,8,9},*P=a,i;,若0≤i≤9,则对a数组元素的引用错误的是()。

A a[10]

B *(&a[i])

C P[i]

D a[p-a]

答案:A

[解析]长度为n的数组其各个元素的下标应该是从0到n-1,因此,长度为10的数组a,第10个元素为a[9],而不是a[10],故答案为A选项。

32. 有以下程序:程序运行后的输出结果是()。

A 6,1

B 1,1

C 7,1

D 7,2

答案:C

[解析]表达式c=(13>>1)11中,>>是右移符号,数字13换算成二进制后右移1位,再和1进行按位或运算,结果为7;表达式d=(13>1)||1中,首先判断13是否大于1,此时条件成立返回1后,再和1进行或运算,结果为1,因此答案为C选项。

33. 有以下程序:

程序运行后的输出结果是()。

A =

B XXX

C =XX

D X=

答案:A

[解析]主函数首先为结构体定义两个变量s1、s2,分别使用字符串拷贝函数strcpy()为s1和s2的成员name赋值,再将s2中的成员信息赋值给s1,因此输出为“=”,答案为A选项。

34. 有以下程序:程序运行后的输出结果是()。

A 1,2,1,2,0,

B 1,5,0,4,0,

C 1,5,5,4,0,

D 0,4,0,4,0

答案:D

[解析]“&”表示与运算,主函数首先定义一个数组array[6],初始化前4个元素的值,其余默认值为0。在for循环中,为数组array中每一个元素换算成二进制数后和二进制整数“100”进行按位与运算,再将结果进行输出,因此答案为D选项。

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

2009年3月二级C语言笔试真题((1)—(10)每小题2分,(11)—(50)每题1分,共60分) 下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。 (1)下列叙述中正确的是 A)栈是“先进先出”的线性表 B)队列是“先进先出”的线性表 C)循环队列是非线性结构 D)有序性表既可以采用顺序存储结构,也可以采用链式存储结构 (2)支持子程序调用的数据结构是 A)栈B)树C)队列D)二叉树 (3)某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是 A)10B)8C)6D)4 (4)下列排序方法中,最坏情况下比较次数最少的是 A)冒泡排序 B)简单选择排序 C)直接插入排序 D)堆排序 (5)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是 A)编译软件 B)操作系统 C)教务管理系统 D)汇编程序 (6)下面叙述中错误的是 A)软件测试的目的是发现错误并改正错误 B)对被调试的程序进行“错误定位”是程序调试的必要步骤 C)程序调试通常也称为Debug D)软件测试应严格执行测试计划,排除测试的随意性 (7)耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 A)提高耦合性降低内聚性有利于提高模块的独立性 B)降低耦合性提高内聚性有利于提高模块的独立性

C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度D)内聚性是指模块间互相连接的紧密程度 (8)数据库应用系统中的核心问题是 A)数据库设计 B)数据库系统设计 C)数据库维护 D)数据库管理员培训 (9)有两个关系R,S如下: 由关系R通过运算得到关系S,则所使用的运算为 A)选择B)投影C)插入D)连接 (10)将E-R图转换为关系模式时,实体和联系都可以表示为A)属性B)键C)关系D)域 (11)以下选项中合法的标识符是 A)1-1B)1—1C)-11D)1-- (12)若函数中有定义语句:intk;,则 A)系统将自动给k赋初值0 B)这时k中值无定义 C)系统将自动给k赋初值-1 D)这时k中无任何值 (13)以下选项中,能用作数据常量的是 A)o115B)0118C))115L (14)设有定义:intx=2;,以下表达式中,值不为6的是A)x*=x+1 B)x++,2*x C)x*=(1+x)

计算机二级c语言历年真题及答案

计算机二级c语言历年真题及答案【篇一:国家计算机二级c语言历年真题及答案】 class=txt>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)void b)8_8 c)_0_ d)unsigned (13)阅读以下程序

新版计算机二级C语言测试题及答案解析

计算机二级C语言测试题及答案解析计算机二级C语言测试题及答案解析 C语言的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,下面给大家整理了计算机二级C语言测试题及答案,欢迎阅读! 计算机二级C语言测试题及答案解析 1.(A )是构成C语言程序的基本单位。 A、函数 B、过程 C、子程序 D、子例程 2.C语言程序从 C 开始执行。 A、程序中第一条可执行语句 B、程序中第一个函数 C、程序中的main函数 D、包含文件中的第一个函数 3、以下说法中正确的是( C )。

A、C语言程序总是从第一个定义的函数开始执行 B、在C语言程序中,要调用的函数必须在main( )函数中定义 C、C语言程序总是从main( )函数开始执行 D、C语言程序中的main( )函数必须放在程序的开始部分 4.下列关于C语言的说法错误的是( B ) 。 A、 C程序的工作过程是编辑、编译、连接、运行 B、 C语言不区分大小写。 C、 C程序的三种基本结构是顺序、选择、循环 D、C程序从main函数开始执行 5.下列正确的标识符是(C )。 A、-a1 B、a[i] C、a2_i D、int t 5~8题为相同类型题 考点:标识符的命名规则 只能由字母、数字、下划线构成

数字不能作为标识符的开头 关键字不能作为标识符 选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int 为关键字,不满足(3) 6.下列C语言用户标识符中合法的是(B )。 A、3ax B、x C、case D、-e2 E)union 选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1); 7.下列四组选项中,正确的C语言标识符是( C )。 A、 %x B、a+b C、a123 D、123 选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)

历年全国计算机二级C语言试题库完整

. . . . 参考 50道C 语言知识题 1.以下叙述中正确的是 A)用C 程序实现的算法必须要有输入和输出操作 B)用C 程序实现的算法可以没有输出但必须要有输入 C)用C 程序实现的算法可以没有输入但必须要有输出 D)用C 程序实现的算法可以既没有输入也没有输出 2.下列可用于C 语言用户标识符的一组是 A)void,define,WORDB)a3_3,_123,Car C)For,-abc,IFCaseD)2a,DO,sizeof 3.以下选项中可作为C 语言合法常量的是 A)-80B)-080C)-8e1.0D)-80.0e 4.若有语句:char*line[5];,以下叙述中正确的是 A)定义line 是一个数组,每个数组元素是一个基类型为char 为指针变量 B)定义line 是一个指针变量,该变量可以指向一个长度为5的字符型数组 C)定义line 是一个指针数组,语句中的*号称为间址运算符 D)定义line 是一个指向字符型函数的指针 5.以下定义语句中正确的是 A)inta=b=0;B)charA=65+1,b=′b′; 6.有以下程序段 charch;intk; ch=′a′; k=12; printf("%c,%d,",ch,ch,k);printf("k=%d\n",k); 已知字符a 的ASCII 码值为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 7.有以下程序 main() {inti,s=1; for(i=1;i<50;i++) if(!(i%5)&&!(i%3))s+=i; printf("%d\n",s);} 程序的输出结果是 A)409B)277C)1D)91 8.当变量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) 9.若变量已正确定义,有以下程序段

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

全国计算机等级考试二级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 算法只能被有限的用户使用

计算机二级C语言考试编程题题库

计算机c语言编程题库 1、求100之内自然数中最大的能被17整除的数。 void main() { int i; for(i=100;i>0;i--) if(i%17==0)break; printf("%d\n",i); } 2、已知a,b,c都是1位整数,求当三位整数abc、cba的和为1333时a、b、c的值。 void main() { int a,b,c; for(a=1;a<=9;a++) { for(b=0;b<=9;b++) { for(c=1;c<=9;c++) if(a*100+b*10+c+c*100+b*10+a==1333) printf("%d,%d,%d\n",a,b,c); } } } 3、计算并输出200-400之间不能被3整除的整数的和。 void main() { int i,sum=0; for(i=200;i<=400;i++) if(i%3!=0) sum=sum+i; printf("%d\n",sum); } 4、从键盘输入10个数,统计非负数的个数,并计算非负数的和。 void main() { int i,n=0,sum=0; int a[10]; printf(“请输入10个数:”);

for(i=0;i<10;i++) scanf(“%d”,&a[i]); for(i=0;i<10;i++) if(a[i]>=0) { sum=sum+a[i]; n++;} printf("非负个数是%d,sum=%d\n",n,sum); } 5、求100之内自然数中偶数之和。 void main() { int i,sum=0; for(i=0;i<=100;i++) if(i%2==0) sum=sum+i; printf("sum=%d\n",sum); } 6、输入5个数,求和并输出。要求编写求和的函数。 void main() { int b(int x[],int n); int sum=0; int a[5]; int i; printf("请输入5个数:"); for(i=0;i<5;i++) scanf("%d",&a[i]); sum=b(a,5); printf("sum=%d\n",sum); } int b(int x[],int n) { int i,sum=0; for(i=0;i<5;i++) sum=sum+x[i]; return sum; } 7、编程计算1*2*3+3*4*5+5*6*7+...+99*100*101的值。 void main() { int i,sum=0; for(i=1;i<=99;i=i+2) sum=sum+i*(i+1)*(i+2); printf("%d\n",sum); } 8、编写程序,将用户输入的字符串中所有的字符a用*代替,然后输出。void main()

计算机二级考试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如下: R B C D a 0 k1 b 1 n1 S B C D f 3 h2 a 0 k1

(完整版)历年全国计算机二级C语言题库

50道C语言知识题 1.以下叙述中正确的是 A)用C程序实现的算法必须要有输入和输出操作 B)用C程序实现的算法可以没有输出但必须要有输入 C)用C程序实现的算法可以没有输入但必须要有输出 D)用C程序实现的算法可以既没有输入也没有输出 2.下列可用于C语言用户标识符的一组是 A)void,define,WORDB)a3_3,_123,Car C)For,-abc,IFCaseD)2a,DO,sizeof 3.以下选项中可作为C语言合法常量的是 A)-80B)-080C)-8e1.0D)-80.0e 4.若有语句:char*line[5];,以下叙述中正确的是 A)定义line是一个数组,每个数组元素是一个基类型为char为指针变量 B)定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组 C)定义line是一个指针数组,语句中的*号称为间址运算符 D)定义line是一个指向字符型函数的指针 5.以下定义语句中正确的是 A)inta=b=0;B)charA=65+1,b=′b′; C)floata=1,*b=&a,*c=&b;D)doublea=00;b=1.1; 6.有以下程序段 charch;intk; ch=′a′; k=12; printf("%c,%d,",ch,ch,k);printf("k=%d\n",k); 已知字符a的ASCII码值为97,则执行上述程序段后输出结果是 A)因变量类型与格式描述符的类型不匹配输出无定值 B)输出项与格式描述符个数不符,输出为零值或不定值 C)a,97,12k=12 D)a,97,k=12 7.有以下程序 main() {inti,s=1; for(i=1;i<50;i++) if(!(i%5)&&!(i%3))s+=i; printf("%d\n",s);} 程序的输出结果是 A)409B)277C)1D)91 8.当变量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) 9.若变量已正确定义,有以下程序段 inta=3,b=5,c=7;

计算机二级C语言测试题(含答案)

(第一章) 1. 以下关于算法的描述不正确的是__________。 A. 任何一个问题,它的实现算法是唯一的 B. 描述算法常用的表达工具有流程图、N-S图、PAD图、伪码等 C. 算法的最终实现是计算机程序 D. 正确性和清晰易懂性是一个好算法的基本条件 2.下面是一个加法程序,指出存在的逻辑错误和语法错误。 /* 求整数a和b的和*/ main( ) { int a,b; a=8; b=2000; print("%d\n",a-b); } 3.在每个C程序中都必须包含有这样一个函数,该函数的函数名为__________。 A.main B. MAIN C. name D. function 4.以下叙述不正确的是__________。 A.C程序书写格式规定,一行内只能写一个语句 B.main()函数后面有一对花括号,花括号内的部分称为函数体 C.一个C程序必须有main()函数 D.C规定函数内的每个语句以分号结束 5.以下各标识符中,合法的用户标识符为_________。 A.A#C B.mystery C.main D.ab* 6.已知求解某问题的算法如下: ⑴输入a、b、c三个数。 ⑵将a和b比较,较大者放在a中,小者放在b中。 ⑶将a和c比较,较大者放在a中,小者放在c中。 ⑷将b和c比较,较大者放在b中,小者放在c中。 ⑸依次输出a、b、c。 请根据上述算法描述,把算法的功能表达出来。 【答案】把任意输入的三个数a、b、c按降序排列的顺序输出。 7.一个C语言程序可以包括多个函数,程序总是按照如下_________所描述的方式执行当前的程序。 A.从本程序的main()函数开始,到本程序文件的最后一个函数结束。 B.从本程序文件的第一个函数开始,到本程序文件的最后一个函数结束。 C.从main()函数开始,到main()函数结束。 D.从本程序文件的第一个函数开始,到本程序main()函数结束。 8.以下叙述正确的是_________。 A.在C程序中,main()函数必须位于程序的最前面。 B.C程序的每行中只能写一条语句。 C.在对一个C程序进行编译的过程中,可发现注释中的拼写错误。 D.C语言本身没有输入输出语句。 答案: 1. A 2.语法错误是print, 应该为printf;逻辑错误是a-b,应该为a+b。 3.A 4.A 5.B 6.把任意输入的三个数a、b、c按降序排列的顺序输出。 7.C 8.D

2016年计算机二级c语言题库及参考答案

2016年计算机二级c语言题库及答案 一、选择题(每小题1分,共40小题,共40分) 1.设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为( )。 A.20 B.0或35 C.15 D.16 2.下列关于栈的叙述中,正确的是( )。 A.栈底元素一定是最后入栈的元素 B.栈操作遵循先进后出的原则 C.栈顶元素一定是最先入栈的元素 D.以上三种说法都不对 3.下列链表中,其逻辑结构属于非线性结构的是( )0、 A.双向链表 B.带链的栈 C.二叉链表 D.循环链表 4.在关系数据库中,用来表示实体间联系的是( )。 A.网状结构 B.树状结构 C.属性 D.二维表 5.公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是( )。 A.1:m联系 B.m:n联系 C.1:1联系 D.m:l联系 6.右两个关系R和S如下:

则由关系R得到关系S的操作是( )。 A.自然连接 B.并 C.选择 D.投影 7.数据字典(DD)所定义的对象都包含于( )。 A.软件结构图 B.方框图 C.数据流图(DFD图) D.程序流程图 8.软件需求规格说明书的作用不包括( )。 A.软件设计的依据 B.软件可行性研究的依据 C.软件验收的依据 D.用户与开发人员对软件要做什么的共同理解 9.下面属于黑盒测试方法的是( )。 A.边界值分析 B.路径覆盖 C.语句覆盖 D.逻辑覆盖 10.下面不属于软件设计阶段任务的是( )。 A.制订软件确认测试计划 B.数据库设计 C.软件总体设计 D.算法设计 11.以下叙述中正确的是( )。 A.在C语言程序中,main函数必须放在其他函数的最前面 B.每个后缀为C的C语言源程序都可以单独进行编译 C.在C语言程序中,只有main函数才可单独进行编译 D.每个后缀为.C的C语言源程序都应该包含一个main函数 12.C语言中的标识符分为关键字、预定义标识符和用户标识符,以下叙述正确的是( )。 A.预定义标识符(如库函数中的函数名)可用做用户标识符,但失去原有含义

2020计算机二级C语言考试真题汇总

模拟卷1 1 [填空题] 下列给定程序中,函数fun的功能是:在形参S所指字符串中寻找与参数C相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。 例如,若s所指字符串为“baacda”,c中的字符为a,执行后S所指字符串为“baaaacdaa”。 请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。 注意:部分源程序给出如下。 不得增行或删行,也不得更改程序的结构! 试题程序: 参考解析: 【参考答案】 【解题思路】 填空1:for语句循环条件是判断是否到达字符串结尾,即当前字符是否为‘\0’。 填空2:while语句用以确定字符串的长度,所以变量n赋初值为0。 填空3:题目要求如果找到与参数c相同的字符,就在后面插入一个相同的字符,且找到后应该给数组元素赋值,本题目给出参数为c。 二、程序修改题 2 [简答题] 下列给定程序中函数fun的功能是:逐个比较p、q所指两个字符串对应位置上的字符,并把ASCII 值大或相等的字符依次存放到c所指的数组中,形成一个新的字符串。 例如,若主函数中a字符串为“aBCDeFgH”,b字符串为"Abcd",则c中的字符串应为“aBcdeFgH”。 请改正程序中的错误,使它能得出正确的结果。 注意:部分源程序在文件MODl1.C中,不得增行或删行,也不得更改程序的结构!

参考解析: 【参考答案】 (1)int k=0; (2)while(*p||*q) 【考点分析】 本题考查:变量初始化,需根据题意确定变量含义,然后对其进行初始化操作;while循环语句。 【解题思路】 (1)变量k存放数组e的下标,因此应初始化为0。 (2)while循环语句的循环条件是判断两个字符串是否到达结尾。 三. 程序设计题 3 [简答题] 规定输入的字符串中只包含字母和*号。请编写函数fun,其功能是:将字符串尾部的*号全部删除,前面和中间的*号不动。 例如,字符串中的内容为:“****A*BC*DEF*G*******”.删除后,字符串中的内容应当是: “****A*BC*DEF*G”。在编写函数时,不得使用C语言提供的字符串函数。 注意:部分源程序在文件PROG1.C中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 参考解析: 【参考答案】 【考点分析】 本题考查:删除字符串尾部+号;删除的主要思想是把不删除的字符保留起来。 【解题思路】 对于一个字符串要删除其尾部的*号,只需要在最后一个不是*号的字符后面加上结束符号‘\0’。具体操作为:首先找到字符串的结尾,然后从最后一个字符开始往前逐个判断是否为*号,直到找到非*号字符为止,最后在该字符后面加上结束符号‘\0’。

全国计算机等级考试二级C语言真题库之选择题(15)

全国计算机等级考试等级考试真题库之选择题(15) 1.下列链表中,其逻辑结构属于非线性结构的是 A) 二叉链表 B) 循环链表 C) 双向链表 D) 带链的栈 参考答案:A 【解析】在定义的链表中,若只含有一个指针域来存放下一个元素地址,称这样的链表为单链表或线性链表。带链的栈可以用来收集计算机存储空间中所有空闲的存储结点,是线性表。在单链表中的结点中增加一个指针域指向它的直接前件,这样的链表,就称为双向链表(一个结点中含有两个指针),也是线性链表。循环链表具有单链表的特征,但又不需要增加额外的存贮空间,仅对表的链接方式稍做改变,使得对表的处理更加方便灵活,属于线性链表。二叉链表是二叉树的物理实现,是一种存储结构,不属于线性结构。答案为A选项。 2.设循环队列的存储空间为Q(1: 35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为 A) 15 B) 16 C) 20 D) 0或35 参考答案:D 【解析】在循环队列中,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置。在循环队列中进行出队、入队操作时,头尾指针仍要加1,朝前移动。只不过当头尾指针指向向量上界时,其加1操作的结果是指向向量的下界0。由于入队时尾指针向前追赶头指针,出队时头指针向前追赶尾指针,故队空和队满时,头尾指针均相等。答案为D选项。 3.下列关于栈的叙述中,正确的是 A) 栈底元素一定是最后入栈的元素 B) 栈顶元素一定是最先入栈的元素 C) 栈操作遵循先进后出的原则 D) 以上说法均错误 参考答案:C 【解析】栈顶元素总是后被插入的元素,从而也是最先被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。栈的修改是按后进先出的原则进行的。因此,栈称为先进后出表,或"后进先出"表,所以选择C。 4.在关系数据库中,用来表示实体间联系的是 A) 属性 B) 二维表 C) 网状结构 D) 树状结构 参考答案:B

历年全国计算机等级考试-二级C语言上机考试题库及答案

1.填空 给定程序的功能是调用fun函数建立班级通讯录。通讯录中记录每位学生的编号,姓名和电话号码。班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为myfile5.dat的二进制文件中。 请在程序的下划线处填入正确的内容并把下划线删除,是程序得出正确的结果。 注意:源程序存放在考生文件夹下的BLANK1.c中 不得增行或删行,也不得更改程序的结构! void check(); /**********found**********/ int fun(___1___ *std) { /**********found**********/ ___2___ *fp; int i; if((fp=fopen("myfile5.dat","wb"))==NULL) return(0); printf("\nOutput data to file !\n"); for(i=0; i

二级C语言考试题

1.程序设计语言的语言处理程序是一种___A___。(1分) A 、系统软件 B 、应用软件 C 、办公软件 D 、工具软件 2. 计算机只能直接运行__C____。(1分) A 、高级语言源程序 B 、汇编语言源程序 C 、机器语言程序 D 、任何源程序 3.为解决某一特定问题而设计的指令序列称为___C___。(1分) A 、文档 B 、语言 C 、程序 D 、系统 4. 程序设计中,若用数组名作为函数调用的实参,传递给形参的是___D___。(1分) A 、数组第一个元素的值 B 、数组中全部元素的值 C 、数组元素的个数 D 、数组的首地址 5. 编制一个好的程序首先要确保它的正确性和可靠性,除此以外,通常更注重源程序的______。(1分) A 、易使用性、易维护性和效率 B 、易使用性、易维护性和易移植性 C 、易理解性、易测试性和易修改性 D 、易理解性、安全性和效率 6. 程序设计中,下列结论只有一个是正确的,它是__A____。(1分) A 、递归函数中的形式参数是自动变量 B 、递归函数中的形式参数是外部变量 C 、递归函数中的形式参数是静态变量 D 、递归函数中的形式参数可以根据需要自己定义存储类型 7.__A____是面向对象程序设计语言不同于其它语言的主要特点。 (1分) A 、继承性 B 、消息传递 C 、多态性 D 、静态联编 8. 从软件工程的观点,软件是___B___。(1分) A 、程序的集合 B 、程序、数据和文档的集合 C 、算法的集合 D 、算法和程序的集合 9. 存储器管理主要是对__A____的管理。(1分) A 、内存 B 、外存 C 、内存和外存 D 、文件 10. 设W 为二维数组,其中每个数据元素占用6个字节,行下标i 从0到8 ,列下标j 从2到5,W 中第6行的元素和第4列的元素共占用___A___个字节。(1分) A 、78 B 、72 C 、66 D 、84 11. 函数的形参和实参结合是__C____(1分) A 、传值 B 、传地址 C 、根据情况而定 D 、传名字 12. 下面关于变量的生存周期的说法错误的是_A_____(1分) A 、全局变量的生存周期从程序运行开始到程序结束 B 、局部变量的生存周期从块或函数的开始到块或函数的结束 C 、静态局部变量的生存周期与全局变量相同 D 、静态全局变量的作用域是整个程序 13. 对计算机进行程序控制的最小单位是__C____。(1分) A 、语句 B 、字节 C 、指令 D 、程序 14. 通常面向对象程序设计的英文缩写用__C____。(1分) A 、OOA B 、OOD C 、OOP D 、OOT 15. 在软件设计和编码时,采取___B____等措施都有利于提高软件的可测试性。(1分) A 、不使用标准文本以外的语句,书写详细正确的文档 B 、不使用标准文本以外的语句,采用良好的程序结构 C 、书写详细正确的文档,信息隐蔽 D 、书写详细正确的文档,采用良好的程序结构 16. 程序段和数据段的地址信息在__D____中保存。(1分) A 、进程标识符 B 、处理机状态 C 、进程调度信息 D 、进程控制信息

最新福建省计算机等级考试二级C语言考试题库

改错题 #include #include void main() { char s1[100], s2[100]; int i,s_len; printf("Please input string: \n"); gets(s1); s_len = /**/ s1 /**/; for(i=0; i= '0' && s1[i] <= '7') s2[i] = s1[i] + 2; else if(s1[i] == '8'/**/ && /**/s1[i]=='9') s2[i] = s1[i]-8; else s2[i] = s1[i]; } /**/ s2[i+1] /**/ = '\0'; puts(s2); getch(); }

#include #include int prime( int x ) { int i, mark=1 ; double k; /**/ i=1 /**/; k=(int)sqrt((double)x); while (i<=k) { if(x%i==0) {/**/ i=k+1; /**/ break; } i++; } return (mark); } void main() { int a; printf("Input a number: "); scanf("%d",&a); if(/**/ !prime(a) /**/) printf("%d is a prime number.\n", a); else printf("It's not.\n"); getch(); }

(完整版)2019二级C语言题库参考答案解析

2019年C语言考题答案1、程序填空题 给定的程序的功能是调用fun函数建立班 级通讯录。通讯录中记录 每位学生的编号、姓名和电话号码班级的人 数和学生的信息从键盘 读入,每个人的信息作为一个数据块写到名 为myfile5.dat的二进 制中。 填空:(1)STYPE(2)FILE(3)fp 改错:(1) for(i=0;i<=sl;i++)(2) t[2*sl]=“\0“ 或t[sl+sl]=“\0“ 编程: *c=(a/10)*1000+(b/10)*100+(a%10)*10+(b% 10); 2、程序填空题 给定程序的功能是:从键盘输入若干文本 (每行不超过80个字符),写到文件 myfile4.txt中,用-1作为字符串输出输入的 标志。然后将文件的内容读出显示在屏幕 上。文件的读写分别由自定义函数ReadText

和Writetext实现。 填空:(1)*fw(2)str (3) str 改错:(1)voidfun(longs,long*t)(2) s1=s1*10; 编程:int i,j=0,min=a[0].s; for(i=0;i

最新全国计算机等级考试二级C语言-题库(全)

2016年3月份全国计算机等级考试二级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如下: R B C D a 0 k1 b 1 n1 S B C D f 3 h2 a 0 k1 n 2 x1 T B C D a 0 k1 由关系R和S通过运算得到关系T,则所使用的运算为 A)并B)自然连接C)笛卡尔积D)交 (10)下列有关数据库的描述,正确的是 A)数据处理是将信息转化为数据的过程 B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变 C)关系中的每一行称为元组,每一个列称为属性 D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的关键字,则称其为本关系的外关键字 (11)以下叙述中正确的是 A)用C程序实现的算法必须要有输入和输出操作 B)用C程序实现的算法可以没有输出但必须要有输入 C)用C程序实现的算法可以没有输入但必须要有输出

二级C语言题库

第1套题 一、程序填空题 #include #include #define N 5 typedef struct { int num; char name[10]; char tel[10]; }STYPE; void check(); /**********found**********/ int fun(___1___ *std) { /**********found**********/ ___2___ *fp; int i; if((fp=fopen("myfile5.dat","wb"))==NULL) return(0); printf("\nOutput data to file !\n"); for(i=0; i

void check() { FILE *fp; int i; STYPE s[10]; if((fp=fopen("myfile5.dat","rb"))==NULL) { printf("Fail !!\n"); exit(0); } printf("\nRead file and output to screen :\n"); printf("\n num name tel\n"); for(i=0; i #include void fun (char *s, char *t) { int i, sl; sl = strlen(s); /************found************/ for( i=0; i<=s1; i ++) t[i] = s[i]; for (i=0; i

c语言2级考试题

一、选择题 (1) 下面叙述正确的是(C) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止 D. 以上三种描述都不对 (2) 以下数据结构中不属于线性数据结构的是(C) A. 队列 B. 线性表 C. 二叉树 D. 栈 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 8 B. 16 C. 32 D. 15 (4) 下面描述中,符合结构化程序设计风格的是(A) A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执行效率 D. 不使用goto语句 (5) 下面概念中,不属于面向对象方法的是(D) 注:P55-58 A. 对象 B. 继承 C. 类 D. 过程调用 (6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B) A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 (7) 在软件开发中,下面任务不属于设计阶段的是(D) A. 数据结构设计 B. 给出系统模块结构 C. 定义模块算法 D. 定义需求并建立系统模型 (8) 数据库系统的核心是(B) A. 数据模型 B. 数据库管理系统 C. 软件工具 D. 数据库 (9) 下列叙述中正确的是(C) A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是指设计数据库管理系统 C.数据库技术的根本目标是要解决数据共享的问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致 (10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 (11) 算法的时间复杂度是指(C) 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. 需求分析 (16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A) 注:P67

相关文档
最新文档