计算机二级考试机试试题Word文档格式.docx
《计算机二级考试机试试题Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机二级考试机试试题Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
Inputasentence:
\n"
);
gets(str);
maxlen=len_max(&
str);
maxlen=%d\n"
maxlen);
二、编写程序(程序文件名为)(60分)
请用函数调用方式编写程序,要求:
:
|
l、写一create函数,功能是:
根据形参n的值(1<
=n<
=10),按如下所示规律构造二维数组下三角的前n行:
1
57
91113
13151719
1719212325
………….
2、在main函数中输入一整数m(1<
=m<
=10)并调用create函数,输出该二维数组下三角的前m行。
3、结果要求输出到屏幕和文件中。
(第二套)
:
一、程序调试题(文件名(40分)
磁盘上有,其功能是:
把一个正整数各位上的数转换成对应的数字字符,并逆序输出(输出时每个数字字符之后插入一个*号)。
例如:
输入256,则输出的字符为6*5*2*
注意:
voidfun(intm,chars)
{intk,i=10;
while(m!
=0)
!
{k=m/i;
*s=k+"
0"
;
s++;
m=(m-k)/i;
}
{intx,i;
chars[10];
scanf("
%d"
&
x);
#
if(x>
0)
{fun(x,s);
for(i=0;
s;
i++)
%c*"
s[i]);
elseprintf("
xvalueerror\n"
二、编写程序(程序文件取名为(60分)
已知磁盘上的文本文件中包含有3个字符串,每个字符串的长度小于80且3个字符串之间以换行符做分隔。
编写程序要求实现:
1.从文件中读入3个字符串并把它们按升序排序。
`
2.将排序后的3个字符串输出到屏幕和追加到原磁盘文件的尾部。
(第三套)
磁盘上已有一文件,其中函数fun的功能是计算两矩阵之乘积。
请改正程序中的错误,使它能计算出正确的结果。
只能修改语句行,不得增加或删除行,也不得更改程序的结构。
#defineM2
-
#defineN3
#defineP2
voidfun(inta[M][N],b[N][P],c[M][P])
{inti,j,k;
for(i=0;
i<
=P;
i++)
for(j=0;
j<
P;
j++)
{c[i][j]=0;
for(k=0;
k<
n;
k++)
c[i][j]=a[i][k]*b[k][j];
~
{inta[2][3]={{1,2,3},{4,5,6}};
intb[3][2]={{1,2},{3,4},{5,6}};
intc[2][2],i,j;
fun(*a,*b,*c);
2;
{for(j=0;
%d"
c[i][j]);
printf("
\
二、编写程序(程序文件名为(60分)
用函数调用方式编写程序。
在主函数中提示输入自然数n,调用函数fun,并输出结果。
函数fun用递归的方法求1+2+…+n的值。
要求:
1.将结果显示在屏幕上的同时输出到文件中。
2.文件名要求从命令行参数给出。
]
20-1套参考答案:
@
))/*改为||*/
/*增加一行语句:
strp++;
*/
/*改为len>
max*/
/*改为returnmax*/
/*改为str*/
二、编写程序(程序文件取名为)(60分)
评分标准:
1.文件打开、关闭正确
2.屏幕结果输出正确
3.文件结果输出正确
4.函数定义、形参书写正确
5.正确定义实参二维数组,并能正确调用creat函数
6.函数中对二维数组的处理正确
参考程序:
#include<
voidcreat(inta[10][10],intn)
{inti,j;
=i;
a[i][j]=i*4+j*2+1;
main()
{inta[10][10],m,i,j;
FILE*fp;
fp=fopen("
"
"
w"
Inputm(1~10):
(
&
m);
creat(a,m);
m;
{printf("
%5d"
a[i][j]);
fprintf(fp,"
fclose(fp);
20-2套参考答案:
voidfun(intm,chars)/*改为*s*/
/*改为m%i*/
/*改为'
0'
/*增加一行内容:
*s='
^
i++)/*改为s[i]*/
1.文件打开和关闭正确
【
2.串的读入正确
3.串的排序正确
4.文件位置指针定位正确
5.屏幕输出和文件输出正确
6.程序结构合理
{charstr[3][80],string[80];
inti,j,k;
r+"
3;
fgets(str[i],80,fp);
Thestrings:
%s"
str[i]);
{k=i;
…
for(j=i+1;
if(strcmp(str[k],str[j])>
0)k=j;
if(k!
=i)
{strcpy(string,str[k]);
strcpy(str[k],str[i]);
strcpy(str[i],string);
Sortedresult:
fseek(fp,0,2);
*
20-3套参考答案:
voidfun(inta[M][N],b[N][P],c[M][P])/*改为intb[N][P],intc[M][P]*/
i++)/*改为i<
P*/
k++)/*改为k<
N*/
/*改为+=*/
¥
/*改为fun(a,b,c)*/
2.函数定义、调用和参数使用正确
3.屏幕输出和文件输出正确
4.递归调用方法正确
5.命令行参数使用正确
$
intfun(intn)
{intf;
if(n<
1)return0;
elseif(n==1)f=1;
elsef=fun(n-1)+n;
returnf;
'
main(intargc,char*argv[])
{intsum,n;
if(argc!
=2)
Error!
exit(0);
fp=fopen(argv[1],"
Inputn:
"
n);
sum=fun(n);
1+2+...+%d=%d\n"
n,sum);
一、选择题
(1)下面叙述正确的是(C)
A.算法的执行效率与数据的存储结构无关B.算法的空间复杂度是指算法程序中指令(或语句)的条数C.算法的有穷性是指算法必须能在执行有限个步骤之后终止D.以上三种描述都不对
(2)以下数据结构中不属于线性数据结构的是(C)
A.队列B.线性表C.二叉树D.栈
(3)在一棵二叉树上第5层的结点数最多是(B)注:
由公式2k-1得
A.8B.16C.32D.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.349B.350C.255D.351
(14)结构化程序设计主要强调的是(B)
A.程序的规模B.程序的易读性
C.程序的执行效率D.程序的可移植性
(15)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D)
注:
即第一个阶段
A.概要设计B.详细设计C.可行性分析D.需求分析
(16)数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
下列图符名标识的图符不属于数据流图合法图符的是(A)注:
P67
A.控制流B.加工C.数据存储D.源和潭
、
(17)软件需求分析阶段的工作,可以分为四个方面:
需求获取、需求分析、编写需求规格说明书以及(B)注:
P66
A.阶段性报告B.需求评审C.总结D.都不正确
(18)下述关于数据库系统的叙述中正确的是(A)
A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余
C.数据库系统中数据的一致性是指数据类型的一致D.数据库系统比文件系统能管理更多的数据
(19)关系表中的每一横行称为一个(A)
A.元组B.字段C.属性D.码
(20)数据库设计包括两个方面的设计内容,它们是(A)
A.概念设计和逻辑设计B.模式设计和内模式设计
C.内模式设计和物理设计D.结构特性设计和行为特性设计
(21)下列叙述中正确的是(A)
A.线性表是线性结构B.栈与队列是非线性结构
C.线性链表是非线性结构D.二叉树是线性结构
(22)下列关于栈的叙述中正确的是(D)
A.在栈中只能插入数据B.在栈中只能删除数据
C.栈是先进先出的线性表D.栈是先进后出的线性表
(23)下列关于队列的叙述中正确的是(C)
A.在队列中只能插入数据B.在队列中只能删除数据
C.队列是先进先出的线性表D.队列是先进后出的线性表
(24)对建立良好的程序设计风格,下面描述正确的是(A)注:
P48
{
A.程序应简单、清晰、可读性好B.符号名的命名要符合语法
C.充分考虑程序的执行效率D.程序的注释可有可无
(25)下面对对象概念描述错误的是(A)注:
P55
A.任何对象都必须有继承性B.对象是属性和方法的封装体
C.对象间的通讯靠消息传递D.操作是对象的动态性属性
(26)下面不属于软件工程的3个要素的是(D)注:
P62
A.工具B.过程C.方法D.环境
(27)程序流程图(PFD)中的箭头代表的是(B)注:
P81
A.数据流B.控制流C.调用关系D.组成关系
(28)在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
其中数据独立性最高的阶段是(A)
A.数据库系统B.文件系统C.人工管理D.数据项管理
(29)用树形结构来表示实体之间联系的模型称为(B)
A.关系模型B.层次模型C.网状模型D.数据模型
(30)关系数据库管理系统能实现的专门关系运算包括(B)
A.排序、索引、统计B.选择、投影、连接
C.关联、更新、排序D.显示、打印、制表
(31)算法一般都可以用哪几种控制结构组合而成(D)
P3
A.循环、分支、递归B.顺序、循环、嵌套
C.循环、递归、选择D.顺序、选择、循环
(32)数据的存储结构是指(B)
P13,要牢记
A.数据所占的存储空间量B.数据的逻辑结构在计算机中的表示
C.数据在计算机中的顺序存储方式D.存储在外存中的数据
(33)设有下列二叉树:
图见书P46
对此二叉树中序遍历的结果为(B)
A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA
(34)在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(D)注:
P56
A.调用语句B.命令C.口令D.消息
(35)检查软件产品是否符合需求定义的过程称为(A)注:
P95
A.确认测试B.集成测试C.验证测试D.验收测试
(36)下列工具中属于需求分析常用工具的是(D)注:
.
A.PADB.PFDC.N-SD.DFD
(37)下面不属于软件设计原则的是(C)
注:
P73
A.抽象B.模块化C.自底向上D.信息隐蔽
(38)索引属于(B)
A.模式B.内模式C.外模式D.概念模式
(39)在关系数据库中,用来表示实体之间联系的是(D)
A.树结构B.网结构C.线性表D.二维表
(40)将E-R图转换到关系模式时,实体与联系都可以表示成(B)
A.属性B.关系C.键D.域
(41)在下列选项中,哪个不是一个算法一般应该具有的基本特征(C)
A.确定性B.可行性C.无穷性D.拥有足够的情报
(42)希尔排序法属于哪一种类型的排序法(B)
A.交换类排序法B.插入类排序法C.选择类排序法D.建堆排序法
(43)在深度为5的满二叉树中,叶子结点的个数为(C)
A.32B.31C.16D.15
(44)对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为(B)注:
要牢记
A.N+1B.NC.(N+1)/2D.N/2
(45)信息隐蔽的概念与下述哪一种概念直接相关(B)注:
P74
A.软件结构定义B.模块独立性C.模块类型划分D.模拟耦合度
(46)面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)
A.模拟现实世界中不同事物之间的联系B.强调模拟现实世界中的算法而不强调概念C.使用现实世界的概念抽象地思考问题从而自然地解决问题D.鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考
(47)在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C)
总体设计也就是概要设计
A.详细设计B.需求分析C.总体设计D.编程调试
(48)软件调试的目的是(B)
与软件测试要对比着复习
A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能
(49)按条件f对关系R进行选择,其关系代数表达式为(C)
A.R|X|RB.R|X|RfC.бf(R)D.∏f(R)
(50)数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D)
P127,要牢记
A.自顶向下B.由底向上C.由内向外D.由整体到局部
(51)在计算机中,算法是指(C)
A.查询方法
B.加工方法
C.解题方案的准确而完整的描述D.排序方法
(52)栈和队列的共同点是(C)
这一共同点和线性表不一样
A.都是先进后出B.都是先进先出C.只允许在端点处插入和删除元素D.没有共同点
(53)已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是(A)
P38,前提要掌握三种遍历的方法
A.cedbaB.acbedC.decabD.deabc
(54)在下列几种排序方法中,要求内存量最大的是(D)
要牢记,书中没有提到。
A.插入排序B.选择排序C.快速排序D.归并排序
(55)在设计程序时,应采纳的原则之一是(A)注:
和设计风格有关
A.程序结构应有助于读者理解B.不限制goto语句的使用
C.减少或取消注解行D.程序越短越好
(56)下列不属于软件调试技术的是(B)
P98
A.强行排错法B.集成测试法C.回溯法D.原因排除法
(57)下列叙述中,不属于软件需求规格说明书的作用的是(D)注:
P71
A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软