C++ 编码规范试题1_第1页
C++ 编码规范试题1_第2页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、31C+编码规范试题三C+编码规范试题(满分100分);一、单选题(5*2);1、关于函数参数,不正确的说法是:;A、对参数输入和非参数输入都要检查有效性;B、防止将函数的参数作为工作变量;C、在调用函数填写参数时,应尽量减少没有必要的默;D、非调度函数应减少或防止控制参数,尽量不要使用;2、宏定义#defineSQUARE(a)(a;A、0次;B、1次;C、2次;D、3次;C+编码规范试题(满分100分)一、单选题(5*2)1、关于函数参数,不正确的说法是:A、对参数输入和非参数输入都要检查有效性。B、防止将函数的参数作为工作变量。C、在调用函数填写参数时,应尽量减少没有必要的默认数据类型转

2、换或强制数据类型转换D、非调度函数应减少或防止控制参数,尽量不要使用数据参数。2、宏定义#defineSQUARE(a)(a)*(a)在b=SQUARE(a+)中,a被执行了次加1A、0次;B、1次;C、2次;D、3次3、()关于可测性,正确的说法是:A断言用来处理必须处理的错误情况B调试时打印的出错信息只要有错误码就行了C软件的DEBUG版本与发行版本分为两套进行维护D项目组内要有一套统一的错误输出函数4. ()以下程序中,可读性较好的有:Arect.length=10;char_poi=str;rect.width=5;Bif(Trunkindex.trunk_state=0)Cword=

3、(high<<8)|low;D*+stat_poi+=1;5、若已经定义:inta9,*p二a;并在以后的语句中未改变p的值,能表示a1地址的表达式是:A、+a;B、a+;C、+p;D、p+;二、多选题(11*4)1、关于变量,正确的说法是:A、若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度;B、若全局变量仅在单个函数中访问,则可以将这个变量修改为该函数的静态局部变量,以降低模块间的耦合度;C、设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑重入问题;D、静态全局变量过大,可能会导致堆栈溢出。2、A机和B机通讯,使用

4、以下结构structA_B_COMunsignedinta:6;unsignedintb:3;unsignedint:7;对这个结构定义的评价中,正确的是:A、由于A机与B机可能使用不同的编译环境,该结构占用空间可能不一致;B、由于A机与B机可能字节序不同,位域的各位在内存中存放的顺序可不一致;C、第三个结构成员没有名字,编译会出错;D、结构中使用位域,不仅节省了空间,也提高了存取效率。3、关于编译预处理程序的功能包括但不限于:A、宏定义;B、条件编译;C、在源代码中插入预定义的环境变量;D、打开或关闭某个编译选项。4、关于代码的编译、编译和审查,下面说法不正确的是:A、在产品软件(项目组)中

5、,可不统一编译开关选项;B、对于安排进行单元测试的代码可以不用进行代码审查;C、LogiScope工具不具有审查代码的功能;D、考虑到开发人员的个人习惯,软件系统目录可自行设计5. ()下列哪些命名是不允许的:AGet_Card_StatBget_card_statCm_GetCardStatD_GET_CARD_2_STAT6. ()关于结构,正确的说法是:A结构占用的空间大小,不仅取决于结构成员的定义,还取决于结构成员的排列顺序,以及结构的字节对齐方式B结构成员的排列顺序,会影响结构成员数据的存取效率C功能太单一的结构,会降低代码效率D结构中使用位域,不仅节省了空间,也提高了存取效率7.

6、()一般说来,以下哪一段代码可能有问题:Aunsignedintsize;while(size->=0)B./*name为一字符串型变量,用以存放名称*/unsignedcharnameMAXNAMELEN;/*分析组成名字的每一个字符,进行相应的处理*/while(*name+)C.unsignedcharch;FILE*date_file;for(;)ch=getch(date_file);/*从文件中读取一个字符*/if(ch=EOF)/*如果文件已被读完,则返回ENDOFFILE*/returnENDOFFILE;D.structSinta;charb4;doublec;stru

7、ctSx=1,"abcd",45.0;8、()关于结构,正确的说法是:A结构占用的空间大小,不仅取决于结构成员的定义,还取决于结构成员的排列顺序,以及结构的字节对齐方式B结构成员的排列顺序,会影响结构成员数据的存取效率C功能太单一的结构,会降低代码效率D结构中使用位域,不仅节省了空间,也提高了存取效率9、A机和B机通讯,使用以下结构structA_B_COMunsignedinta:6;unsignedintb:3;unsignedint:7;对这个结构定义的评价中,正确的是:A、由于A机与B机可能使用不同的编译环境,该结构占用空间可能不一致;B、由于A机与B机可能字节序不

8、同,位域的各位在内存中存放的顺序可不一致;C、第三个结构成员没有名字,编译会出错;D、结构中使用位域,不仅节省了空间,也提高了存取效率。10、关于编译预处理程序的功能包括但不限于:A、宏定义;B、条件编译;C、在源代码中插入预定义的环境变量;D、打开或关闭某个编译选项。11、关于变量,正确的说法是:A、若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度;B、若全局变量仅在单个函数中访问,则可以将这个变量修改为该函数的静态局部变量,以降低模块间的耦合度;C、设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑重入问题;D、静态全局变量过大

9、,可能会导致堆栈溢出。三、判断题(23*2)1. 在同一软件产品内,应规划好接口部分标识符(变量、结构、函数及常量)的命名,防止编译、链接时产生冲突。如可规定接口部分的变量与常量之前加上“模块”标识等。2. 公共变量是增大模块间耦合的原因之一,故应减少没有必要的公共变量以降低模块间的耦合度。3. chara2345678;这样的全局变量申请是允许的。4. 若两个结构间关系较复杂、密切,那么应合为一个结构。5. 对模块中函数的划分及组织方式进行分析、优化,改进模块中函数的组织结构,可以从根本上解决程序效率的问题。6. #pragma指令可激活或者终止编译程序所支持的一些编译功能。7. 任意两个类

10、型的指针都可以进行<,>,>=,<=,=等比较.8. 递归调用使代码简洁,可以使用;但是在主机类函数中是绝对禁止的。9. 非调度函数应减少或防止控制参数,尽量不要使用数据参数。10. 函数设计要符合"高扇入、合理扇出"的原则。11. 头文件可以互相包含,使用#ifndef?的形式保证不会重复引用。12. 数组比指针寻址、运算速度快,因此推荐使用数组,少用指针。13. 程序编译时,要求放开所有的编译告警开关。14. 命名中特殊的缩略语可以不需要有注释.15. 要有自己特有的命名风格,并要始终如一。16. 通过对系统数据结构的划分与组织的改进,以及对程序算法的优化是解决软件空间效率的有效办法。17. 在一个产品的设计中,可以为集成测试和系统测试分别定义不同的调测试开关和打印函数,用不同的宏开关控制。18.任意两个类型的指针都可以进行<,>,>=,<=,=等比较。19. 头文件可以互相包含,使用#ifndef?的形式保证不会重复引用。20. 不允许把多个短语

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论