admin 管理员组文章数量: 1184232
2024年4月26日发(作者:array固定搭配)
一 . 判断题(共 19题,每题 2分,直接在括号内打“√”或“×”)
( 对 )1、不允许把多个短语句写在一行中,即一行只写一条语句。
( 对 )2、如果编程工具提供将 TAB键转换成空格键,对齐、缩进可以使用 TAB键,否
则应使用空格键。
( 对 )3、数据结构声明 ( 包括数组、结构、类、枚举等 ) ,如果其命名不是充分自注
释的,必须加以注释。
( 对 )4、
i
,
j
,
k只可以用作循环变量,不能用于其它局部变量。
( 错 )5、当一个表达式包含多个运算符时,应该尽量用默认优先级来保证表达式
的运算顺序。
( 对 )6、由于引用了全局变量和静态局部变量的函数不方便重入,因此在实时系
统编程中,应尽量减少对全局变量和静态局部变量的使用。
( 错 )7、应当尽可能设计功能全面、灵活的数据结构,以提高效率。
( 错 )8、结构中元素的排列不影响结构占用空间的大小。
( 错 )9、断言可以用来处理程序的任何错误情况。
( 错 )10、在一般应用的情况下,当前代码,处理一个 1000条记录的结果只要 2000 毫
秒。采用了新的处理机制,处理同样大小的结果只要 1999毫秒,这种提高还是有重要意义的。
( 对 )11、提高代码效率应当保证软件系统的正确性、稳定性、可读性及可测性的
前提下进行。
( 错 )12、内存操作越界可以通过测试发现,设计时不必过分关注
.
( 对 )13、对程序进行编译时,必须打开编译器的所有告警开关。
( 对 )14、用宏定义代替表达式时,要使用完备的括号,保证宏定义的完整性。
( 对 )15、单元测试开始要跟踪每一条语句,并观察数据流及变量的变化。不能进
行单步跟踪的代码,要采用日志输出等形式,跟踪数据流和变量的变化;
( 对 )16、一个函数仅完成一件功能。
( 对 )17、对参数输入和非参数输入都要检查有效性。
( 错 )18、应该设计高扇出、合理扇入的函数。
( 错 )19、应该为函数功能的扩展预留尽可能多的参数接口。
二、单项选择题(共 17题,每题 2分)
( D )1、下面哪条语句符合编程规范:
( A)
for (...) {
... // program code
}
( B)
if (...)
{
... // program code
}
( C)
void example_fun( void )
{
... // program code
}
(D) 以上都不对。
( D )2、下面哪种变量定义不当,可能导致堆栈溢出?
A、静态全局变量
B、动态全局变量
C、静态局部变量
D、动态局部变量
:
(
D
)3、在 C语言中,若有以下定
义
char
a;
int
b;
float
c;
double d;
则表达式 a*b+d-c 值的类型为:
A、 float
B、 int
C、 char
D、 double
( A ) 4、关于结构,不正确的说法是:
A、结构的功能要尽可能强大
B、结构的元素不可以随意排列
C、功能太单一的结构会降底代码质量
D、结构间的关系不能太复杂
)5、下面的说法,哪个描述是 正确的?
A、测试代码只是调测时使用,所以没有必要象正式代码一样给出注释。
B、在软件系统中设置与取消有关测试手段,软件功能行为上可以不一致。
C、调测开关统一使用 _UNIT_DEBUG ,一般不允许再定义其它新的调测开
关。
D、好的测试用例应尽可能模拟出程序所遇到的边界值、各种复杂环境及一
( D
些极端情况等。
( A )6、关于程序效率,正确的说法是 _____。A、
要减少循环嵌套次数B、提倡用汇编提高效率
C、程序效率是最重要的D、最忙的循环放在
最外面
( A )7、用 _____,可提高浮点运算效率。
A、乘法代替除法
B、除法代替乘法
C、减法代替加法
D、除法代替加法
( D
) 8、下列说法中,错误的是:
A、 switch 语句必须有 default
分支
B、系统运行之初,必须初始化有关变量
C、必须防止引用已经释放的内存空间
D、为了提高代码效率,应尽可能使用嵌入式汇编
( B
) 9、下面哪种情况是规范中所说的差“
1”错误
A、错误使用“ ++”
B、“ >=”错写成“ >”
C、变量右移时多移了 1个BIT
D、short 型变量错误定义为 char 型而少了一个字节
( A
)10、关于代码的编辑、编译,下面说法不正确的是
A、在产品软件(项目组)中,不需要统一编译开关选项。
B、虽然编辑器提供的块拷贝功能很方便,但还是要小心使用。
C、合理设计软件系统目录,方便开发人员使用。
D、某些语句经编译后产生告警,但如果你认为它是正确的,那么应通过某
种手段去掉告警信息。
( B )11、选择出正确的宏定义 ______。A、
#define INIT_RECT_VALUE( a, b )
a = 0;b = 0;
for (index = 0; index < RECT_TOTAL_NUM; index++)
INIT_RECT_VALUE( rect.a, rect.b );
B、 #define INIT_RECT_VALUE( a, b )
{a = 0; b = 0;}
for
(index = 0; index < RECT_TOTAL_NUM; index++)
{INIT_RECT_VALUE( rect[index].a, rect[index].b );}
C、 #define INIT_RECT_VALUE( a, b )
(a = 0;b = 0;
)
for (index = 0; index < RECT_TOTAL_NUM; index++)
INIT_RECT_VALUE( rect.a, rect.b );
D、 #define INIT_RECT_VALUE( a, b )
a = 0;
b = 0;
for (index = 0; index < RECT_TOTAL_NUM; index++)
(INIT_RECT_VALUE( rect.a, rect.b )
);
( A )12、单元测试的覆盖率要求至少达到 ______
A、语句覆盖;B、
条件覆盖;C、逻
辑覆盖;D、分支
覆盖;
( A )13、关于函数参数, 正确的说法是 ______。A、
不必要的参数应从接口中去掉。B、应为将来的
应用保留充分多的参数。
C、较多的参数可使函数的功能强大,测试、维护容易。
D、将函数的参数作为工作变量,以提高编程和程序执行速度。
( B
)14、关于函数实现, 不正确的说法是 ______。
A、明确函数功能,精确(而不是近似)地实现函数设计。
B、为使得函数具有可重入性,应使用 static
局部变量。
C、编写可重入函数时,若使用全局变量,则应通过关中断、信号量(即
V操作)等手段对其加以保护。
D、函数的功能应该是可以预测的,也就是只要输入数据相同就应产生同样
的输出。
( D )15、关于函数命名, 不正确的说法是 ______。A、
函数名应准确描述函数的功能。
、
P
版权声明:本文标题:编程规范课程试题卷 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1714105656a665911.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论