编程规范课程试题A卷.docx
- 文档编号:16280909
- 上传时间:2023-07-12
- 格式:DOCX
- 页数:11
- 大小:19.84KB
编程规范课程试题A卷.docx
《编程规范课程试题A卷.docx》由会员分享,可在线阅读,更多相关《编程规范课程试题A卷.docx(11页珍藏版)》请在冰点文库上搜索。
编程规范课程试题A卷
(对
(对)
)1、不允许把多个短语句写在一行中,即一行只写一条语句。
2、如果编程工具提供将TAB键转换成空格键,对齐、缩进可以使用TAB键,否则应使用空格键。
(对)(错)的运算顺序。
(对)
(对)3、数据结构声明(包括数组、结构、类、枚举等),如果其命名不是充分自注释的,必须加以注释。
4、i,j,k只可以用作循环变量,不能用于其它局部变量。
5、当一个表达式包含多个运算符时,应该尽量用默认优先级来保证表达式
6、由于引用了全局变量和静态局部变量的函数不方便重入,因此在实时系统编程中,应尽量减少对全局变量和静态局部变量的使用。
(错)
(错)
(错)
(错)
7、应当尽可能设计功能全面、灵活的数据结构,以提高效率。
8、结构中元素的排列不影响结构占用空间的大小。
9、断言可以用来处理程序的任何错误情况。
10、在一般应用的情况下,当前代码,处理一个1000条记录的结果只要
2000毫秒。
采用了新的处理机制,处理同样大小的结果只要1999毫秒,这种提高还是有重要意义的。
(对)11>提高代码效率应当保证软件系统的正确性、稳定性、可读性及可测性的前提下进行。
)13、)14、性。
)不
)12、内存操作越界可以通过测试发现,设计时不必过分关注.对程序进行编译时,必须打开编译器的所有告警开关。
用宏定义代替表达式时,要使用完备的括号,保证宏定义的完整
15、单元测试开始要跟踪每一条语句,并观察数据流及变量的变化。
对)对)错)错)
能进行单步跟踪的代码,要采用日志输出等形式,跟踪数据流和变量的变化;
16、一个函数仅完成一件功能。
17、对参数输入和非参数输入都要检查有效性。
1&应该设计高扇出、合理扇入的函数。
19、应该为函数功能的扩展预留尽可能多的参数接口
、单项选择题(共17题,每题2分)
D)1X下面哪条语句符合编程规范:
A)
…//Programcode>
(B)
if(...)
voidexample_fun(void)
…//programcode
D)以上都不对。
D)2、下面哪种变量定义不当,可能导致堆栈溢出?
A、静态全局变量
B动态全局变量
C静态局部变量
D动态局部变量
3、在C语言中,若有以下定义:
char
a;
intb;
float
c;
doubled;
则表达式a*b+d・c
值的类型为:
A、
float
B、
int
Cx
char
Dx
double
(D)
A)4、关于结构,不正确的说法是=
结构的功能要尽可能强大
结构的元素不可以随意排列
功能太单一的结构会降底代码质量
结构间的关系不能太复杂
A、
B、
C、
D、
下面的说法,哪个描述是正确的?
测试代码只是调测时使用,所以没有必要象正式代码一样给出注释。
B在软件系统中设置与取消有关测试手段,软件功能行为上可以不一致。
C调测开关统一使用_UNIT_DEBUG,—般不允许再定义其它新的调测开关。
D好的测试用例应尽可能模拟出程序所遇到的边界值、各种复杂环境及一些极端情况等。
(A)6、关于程序效率,正确的说法是
A、要减少循环嵌套次数
B提倡用汇编提高效率
C程序效率是最重要的
D最忙的循环放在最外面
(D)5、
A、
(A)7、用,可提高浮点运算效率。
A、乘法代替除法
B除法代替乘法
C减法代替加法
D除法代替加法
D)8、下列说法中,错误的是:
/switch语句必须有default分支
B、系统运行之初,必须初始化有关变量
C、必须防止引用已经释放的内存空间
D为了提高代码效率,应尽可能使用嵌入式汇编
B)9、下面哪种情况是规范中所说的差"1"错误
A、错误使用“++”
B、“>="错写成“>"
C变量右移时多移了1个BIT
Dshort型变量错误定义为char型而少了一个字节
A、
B、
Cx
A)10、关于代码的编辑、编译,下面说法不正确的是
在产品软件(项目组)中,不需要统一编译开关选项。
虽然编辑器提供的块拷贝功能很方便,但还是要小心使用合理设计软件系统目录,方便开发人员使用。
D某些语句经编译后产生告警,但如果你认为它是正确的,过那么应通某种手段去掉告警信息。
B)11、选择出正确的宏定义O
A、#defineINIT_RECT_VALUE(a,b)\
a=0;b=0;
for(index=0;index B、#defineINIT_RECT_VALUE(a,b)\ {a=0;b=0;} for (index=0;index {INIT_RECT_VALUE(rect[index].a,rect[index].b);} C、#defineINIT_RECT_VALUE(a,b)\ (a=0;b=0;) for(index=0;index INIT_RECT_VALUE(rect.a,rect.b); D、#defineINIT_RECT_VALUE(a,b)\ a=0; b=0; for(index=0;index (INIT_RECT_VALUE(rect.a,rect.b)); A)12、 A、 B、 Cx 单元测试的覆盖率要求至少达到语句覆盖; 条件覆盖; 逻辑覆盖; D分支覆盖; A)13、关于函数参数,正确的说法是 A、不必要的参数应从接口中去掉。 B应为将来的应用保留充分多的参数。 C较多的参数可使函数的功能强大,测试、维护容易。 D将函数的参数作为工作变量,以提高编程和程序执行速度 B)14、关于函数实现,不正确的说法是O A、明确函数功能,精确(而不是近似)地实现函数设计。 B为使得函数具有可重入性,应使用static局部变量。 C编写可重入函数时,若使用全局变量,则应通过关中断、信号量(即 P、V操作)等手段对其加以保护。 D函数的功能应该是可以预测的,也就是只要输入数据相同就应产生同样的输出。 D)15、关于函数命名,不正确的说法是 A、函数名应准确描述函数的功能。 B使用动宾词组为执行某操作的函数命名。 如果是00方法,可以只有动词(名词是对象本身)。 C避免使用无意义或含义不清的动词为函数命名。 D函数名称越简单越好。 D)16关于函数,不正确的说法是0 A除非必要,最好不要把与函数返回值类型不同的变量,以编译系统默认的转换方式或强制的转换方式作为返回值返回。 B应减少函数本身或函数间的递归调用。 C函数的规模尽量限制在200行以内。 D函数中的冗余代码只要不影响函数的效率,不需要删除。 C)17代码质量保证优先原则,下面哪个应最优先考虑 A稳定性安全性,指程序稳定可靠安全。 B全局效率,指软件系统的整体效率。 C正确性,指程序要实现设计要求的功能。 D可测试性,指程序要具有良好的可测试性。 三多项选择题(共14题,每题2分,少答多答答错皆不得分) ABD)1关于程序注释,哪些描述是正确的? A修改代码同时修改相应的注释,以保证注释与代码的一致性B错误的注释不但无益反而有害 C不再有用的注释不能删除 D变量常量宏的注释应放在其上方相邻位置或右方 ABD)2、关于程序注释,哪些描述是正确的? A、说明性文件Ch,.def等)的头部应该进行注释 B函数头部应该进行注释 C注释越多越好 D全局变量必须要有注释 ABC)3、为了使程序具有更好的可读性,以下描述正确的: Ax用括号明确表达式的操作顺序,避免使用默认优先级; B避免使用不易理解的数字,用有意义的标识(宏或枚举)来替代; C源程序中关系较为紧密的代码应尽可能相邻; D使用技巧性很高的语句; AB)4下列定义中正确的是: Achar*a="abed"; Bchara[]=”abed”; Cchara[4]="abed"; Dchara[]='abed'; ABC)5定义如下结构 intiLen;shortsSerialNo;charcFlag; charcReserved; structTEMPMSG 〃总消息长度,从头开始算起 //序列号 //执行标志 〃保留未使用 };对这个结构定义的评价中,正确的是: A由于数据结构的成员都在字节对齐边界上,因此存取效率良好; B由于数据结构的成员都在字节对齐边界上,因此节省了占用空间; CcReserved成员保留,可以为以后版本升级和兼容留有余地; (ABCD)6、在分布式环境或不同CPU间的通讯环境中,下面的描述中正确的是: A不同字节序的CPU之间的通讯时,必须进行字节序转换; B字节对齐方式是在编译时决定的,因此应尽量在不同的CP环境上 使用相同的字节对齐方式; C由于不同编译环境对位域的处理可能有差异,因此应尽量避免使用 位域进行通讯; D由于不同编译环境对枚举值所占有空间的定义有差异,因此应尽量避免使用枚举值进行通讯。 ABD)7关于可测性,不正确的说法是O A断言可以用来处理必须处理的错误情况 B调试时打印的出错信息只要有错误码就行了 C项目组内要有一套统一的错误输出函数 D软件的DEBU版本与发行版本可以分为两套源代码 BCD)8下列说法哪些是正确的: A在软件调试过程中构筑软件质量 B充分了解系统接口后,再使用系统提供的功能 C过程/函数中分配的内存,如果不再使用,在过程/函数退出之前要释放 D不能引用已经释放的内存空间,不能随意改变与其它模块的接口 Ex以上都不对 (ABD)9、关于代码质量保证优先次序,不正确的是: Ax可测试性最重要 B、效率比可读性重要 C、稳定性比可读性重要 D局部效率优先于全局效率 (ABD)10、关于代码的编辑、编译和审查,下面说法正确的是: Ax使用代码静态检查工具PC_LINT寸源程序进行检查。 B审查代码时,可使用LogiScopeT具进行。 C代码编写时为了节约时间,提高效率,可一鼓作气编写完毕后再做保存和备份处理。 D某些语句经编译后产生告警,但如果你认为它是正确的,那么应通过某种手段去掉告警信息。 BC)11、使用宏有哪些注意事项O Ax不能使用含有数字的字符串定义宏变量 B将宏所定义的多条表达式放在大括号中 C使用宏时,不允许参数发生变化 D不能用大写字母定义宏变量 ABCD)12关于函数的调用,正确的说法是O A让函数在调用点显得易懂容易理解。 或强制 B在调用函数填写参数时,应尽量减少没有必要的默认数据类型转换数据类型转换。 C对所调用函数的错误返回码要仔细全面地处理。 D对于提供了返回值的函数,在引用时最好使用其返回值。 ABCD)13对于优化函数结构,正确的说法是 A降低函数间的耦合度。 B提高函数内聚。 C代码可读性效率和可维护性。 D不能影响模块功能的实现。 ABC)14关于代码的编辑编译和审查,下面说法正确的是: 函数或 个必须 A当程序中多处出现相似的代码时,可考虑将这些相似的代码抽象成者宏。 B对主机软件而言,打开编译器的所有告警开关对程序进行编译是一的要求;而单板软件则不必。 C条件编译是预处理程序的功能之一。 D在产品软件(项目组)中,要统一编译开关选项。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 规范 课程 试题