练习4

二级C语言必过教程

共 1758字,需浏览 4分钟

 · 2021-06-15

点击蓝字

关注我们

DRAGON BOAT FESTIVAL







练习4


考试规则:点击你认为正确的选项


1.对长度为n的线性表作快速排序, 在最坏情况下,比较次数为()。

A.n

回答错误 ✕

B.n-1

回答错误 ✕



C.n(n-1)

回答错误 ✕


D.n(n-1)/2

回答正确 √

试题解析

快速排序最坏情况就是每次选的基准数都和其他数做过比较,共需比较(n-1)+(n-2)+..+1=n(n-1)/2,选D。



点击答题丨点击选项查看对错丨展开动画


2.对于while(!E)s; ,若要执行循环体s,则E的取值应为:()。

A.E等于1

回答错误 ✕

B.E不等于0

回答错误 ✕

C.E不等于1

回答错误 ✕


D.E等于0

回答正确 √

试题解析

若要让循环"while(!E) s;' 执行循环体s,则循环条件"!E"为真,即表达式E需为假,而C语言中用非0表示真,0表示假,所以E需要等于0,答案选D。







点击答题丨点击选项查看对错丨展开动画


3.下面不能作为软件设计工具的是( )。

A.程序流程图

回答错误 ✕


B.PAD图



回答错误 ✕



C.总体结构图

回答错误 ✕


D.数据流程图(DFD图)



回答正确 √

试题解析

软件概要设计的常用工具是结构图(系统结构图),结构图是描述软件结构的图形工具。软件详细设计的工具包括:图形工具(程序流程图、N-S图、PAD图、HIPO图),表格工具(判定表),语言工具(PDL)。故本题答案为D。


点击答题丨点击选项查看对错丨展开动画


4.有如下程序

#includemain(){int i= 1;for (printf("%d", i); i<4; i++)print("%d", i);printf("\n");

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

A.0123

回答错误 ✕

B.123

回答错误 ✕



C.1123

回答正确 √

试题解析

for语句的- -般形式为"for(表达式1;表达式2;表达式3 ) {循环体语句}",其执行流程是先计算表达式1,之后计算表达式2,根据表达式2的值来判定是否进行循环,若为真,则执行循环体,循环体执行完毕之后再计算表达式3的值。整个循环过程中,表达式的值只会执行-次,而表达式2、3以及循环体每次循环都会执行,所以答案选C。







D.001

回答错误 


点击答题丨点击选项查看对错丨展开动画


5.下面属于 黑盒测试方法的是()。

A.边界值分析法

回答正确 √

试题解析

白盒测试的主要方法有逻辑覆盖测试(语句覆盖、路径覆盖、判断覆盖、条件覆盖、判断-条件覆盖)、 基本路径测试等。黑盒测试的主要方法有:等价类划分法、边界值分析法、错误推测法和因果图等。故本题答案为A。


B.基本路径测试

回答错误 ✕



C.条件覆盖

回答错误 ✕


D.条件-分支覆盖

回答错误 


点击答题丨点击选项查看对错丨展开动画


6.以下叙述中正确的是()。

A.continue语句使得整个循环终止

回答错误 ✕

B.break语句不能用于提前结束for语句的本层循环

回答错误 ✕


C.使用break语句可以使流程跳出switch语句体

回答正确 √

试题解析

break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;当break语句用于do-while. for. while循环语句中时,可使程序终止循环而执行循环后面的语句,即满足条件时便跳出循环。continue语句的作用是跳过循环体中剩余的语句而强行执行下一-次循环。A、B和D三个选项中均有错误。因此C选项正确。



D.在for语句中,continue与break的效果是一样的,可以互换

回答错误 


点击答题丨点击选项查看对错丨展开动画


球分享

球点赞

球在看



浏览 10
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报