嵌入式系统开发人员C语言测试题编程风格选择题

上传人:M****1 文档编号:486850576 上传时间:2023-12-08 格式:DOC 页数:13 大小:25.51KB
返回 下载 相关 举报
嵌入式系统开发人员C语言测试题编程风格选择题_第1页
第1页 / 共13页
嵌入式系统开发人员C语言测试题编程风格选择题_第2页
第2页 / 共13页
嵌入式系统开发人员C语言测试题编程风格选择题_第3页
第3页 / 共13页
嵌入式系统开发人员C语言测试题编程风格选择题_第4页
第4页 / 共13页
嵌入式系统开发人员C语言测试题编程风格选择题_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《嵌入式系统开发人员C语言测试题编程风格选择题》由会员分享,可在线阅读,更多相关《嵌入式系统开发人员C语言测试题编程风格选择题(13页珍藏版)》请在金锄头文库上搜索。

1、3.1选择题(221)请选出可用作C语言用户标识符的一组标识符_ab_a. Void define WORDb. a3_b3 _123 IFc. For -abc Cased. 2a Do sizeof(222)请选出正确的标识符编号_acdfh_a. Hot_dogb. $z*c. cat1d. a11e. SUM#f. Dollarg. 2dogh. S_expi. pointer(223)下面符合规范的函数原型声明有哪些_bd_。a. T_S16 CheckData();b. T_S16 CheckData(void)c. T_S16 SetPoint(T_S16, T_S16)d. T

2、_S16 SetPoint(T_S16 nX, T_S16 nY)(224)声明头文件引用时,避免使用绝对路径,要使用相对路径。以下符合规范的头文件引用有哪些_。a. #include c:switchincdef.inc;b. #include incdef.incc. #include def.incd. #include .def.inc(225)按照编码规范,头文件由_组成:a. 头文件开头处的版权和版本声明;b. API函数的调用示例c. 预处理块d. 函数和类结构定义(226)代码文件由_组成:a. 定义文件开头处的版权和版本声明;b. API函数的调用示例c. 全局变量的声明d.

3、 程序的实现体(包括数据和代码)(227)按照编码规范,符合规范的程序块是_。a. if(!ValidNi(ni) nRepssnInd=SsnDataindex.nRepssnIndex;nRepssnNi=SsnDataindex.ni;b. T_S8 *pContext;T_S16 nIndex;T_S32 lCounter;pContext = (T_S8)malloc(sizeof(T_S8)*100);if (pContext = NULL)return FALSE;c. if (!ValidNi(ni) nRepssnInd = SsnDataindex.nRepssnIndex

4、;nRepssnNi = SsnDataindex.ni;d. T_S8 *pContext;T_S16 nIndex;T_S32 lCounter;pContext = (T_S8)malloc(sizeof(T_S8)*100);if (NULL = pContext)return FALSE;(228)以下说法正确的是_。a. 与注释一样,所有的空白符都会被编译程序忽略掉。在C程序中用空白符隔开可执行语句、函数和注释等,将有助于提高程序的可读性和清晰度;b. 在枚举类型、结构体类型、联合类型、类定义之后,每个函数定义结束之后都要加空行;c. 在一个函数体内,逻揖上密切相关的语句之间不加空

5、行,其它地方应加空行分隔;d. 函数体内,变量定义与第一句可执行语句之间不需要加空行分隔.(229)以下程序的代码行风格符合规范的是_。a. rect.length = 0; rect.width = 0;b. rect.length = width = 0;c. rect.length = 0;rect.width = 0;d. typedef structT_U16 nLeft, nTop, nRight, nBottom;RECT;e. typedef structT_U16 nLeft; T_U16 nTop;T_U16 nRight;T_U16 nBottom;RECT;(230)以

6、下关于代码行内空格说法正确的是_。a. 为了保证缩进和排比留空除外,不要连续留两个以上空格;b. 由于留空格所产生的清晰性是相对的,所以,在已经非常清晰的语句中没有必要再留空格;c. 赋值操作符、比较操作符、算术操作符、逻辑操作符、位域操作符,如=、+= =、=、+、*、%、/、&、|、这类操作符前后不加空格。(231)下面代码行的空格符合规范的是_a. void Func1 (T_S16 x, T_S16 y, T_S16 z)b. if (a=b)&(c=d)c. for (i = 0; i 10; i +)d. T_S16 *x = &y(232)下面代码行的对齐风格符合规范的是_a.

7、#define MAX_TASK_NUMBER 100#define LEFT_X 10#define BOTTOM_Y 400b. void Function(T_S16 x) / program codeif (conditionn) / program codec. If (condition) / program codeelse / program coded. while (condition) / program code(233)以下风格说法符合规范的是_a. 程序的分界符和应独占一行并且位于同一列,同时与引用它们的语句左对齐。 之内的代码块在右边数格处左对齐。建议使用TAB键

8、;b. 对于if、for、while、do等程序块,即使只有一个句子或为空,仍要用和进行明显区分,这样可以防止书写失误。而if、for、while、do等语句应自占一行,执行语句不得紧跟其后;c. 对结构成员赋值,等号对齐;d. #define的各个字段对齐;(234)以下说法符合规范的是_a. 注释应当准确、易懂,防止注释有二义性(错误的注释不但无益反而有害)。注释是对代码的解释。注释应解释为什么这样做,而不应解释正在做什么,除非这段代码非常晦涩(要注明技巧);b. 注释的位置应与被描述的代码相邻,应放在代码的上方或右方(对单条语句的注释)相邻位置,不可放在下方;c. 为了整齐起见,单行或函

9、数体内注释用/,后面留有一个空格,相邻行的/注释要列对齐;d. 对于两行以上的连续注释用/* */。/*和*/最好单独一行,如果和注释内容同行,则/*之后和*/之前都应留有空格;(235)以下说法符合规范的是_a. 宏、常量和类型的命名应该使用字母全部大写的方式,各单词之间用下划线隔开;b. 结构名、枚举名各单词的字母均为大写,单词间用下划线连接;c. 除非必要,不要用数字或较奇怪的字符来定义标识符;d. 结构成员和枚举成员名各单词的字母全部大写,各单词之间用下划线隔开。(236)以下说法符合规范的是_a. 除了用于循环控制的变量,不要使用单一的字符命名变量;b. 布尔型变量的命名应有明确的是

10、与非的含义;c. 函数作用域变量和文件作用域变量,以及全局变量必须避免同名;d. 用户标识符可以以下划线作开头。(237)以下关于说法符合规范的是_a. 不同类型的操作符混合使用时,使用括号给出优先级;b. 如果代码行中的操作符比较多,为了防止产生歧义并提高可读性,应当用括号确定表达式的操作顺序;c. 为了使代码更紧凑,尽量使用复杂的操作符组合;d. 为了清晰起见,不要把+、-操作符与其他如+=、-=等组合在一起形成复杂奇怪的表达式。(238)以下表达式符合规范的是_。a. while (p & *p) / p为指针变量b. if (1 = flag) / flag为布尔变量c. if (0.

11、0 = x) / x为浮点变量d. if (strlen(strName) != 0) / strName为字符串变量(239)以下对逻辑表达式的使用说明正确的是_。a. 一个变量和一个常数进行比较,如果是比较是否相等,则要求把常量放到左边;b. 对于 if. else if 语句,最好保留else语句处理缺省情况;c. 尽量不要在for 循环体内修改循环变量,防止for 循环失去控制;d. 不可将浮点变量用=或!=与任何数字比较。(240)关于循环语句下面说法正确的是_。a. 在多重循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,以减少CPU跨切循环层的次数;b. 如果

12、循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面;c. 应仔细考虑循环体内的语句是否可以放在循环体之外,使循环体内工作量最小,从而提高程序的时间效率;d. 尽量减少循环嵌套层次。(241)下面的函数声明符合规范的是_。a. void SetValue(T_U16 nWidth, T_U16 nHeight);b. void SetValue(T_U16, T_U16);c. float GetValue(void);d. float GetValue()。(242)下面关于函数参数的说法符合规范的是_。a. 尽量不设计多参数函数,参数个数尽量控制在5个以内。将不使用的参数从

13、接口中去掉,减少函数间接口的复杂度;b. 如果参数是指针,且仅作输入用,则应在类型前加const,以防止该指针在函数体内被意外修改;c. 尽量把参数作为局部变量使用;d. 尽量不要使用类型和数目不确定的参数。(243)下面说法符合规范的是_。a. 函数名字与返回值类型在语义上不可冲突;b. 不要将正常值和错误标志混在一起返回;c. 在函数体的出口处,要对return语句的正确性和效率进行检查;d. 一个函数可以有多个出口点。(244)下面说法符合规范的是_。a. 只需检查输入参数的有效性就可以了,不必检查通过其它途径进入函数体内的变量的有效性,例如全局变量、文件句柄等;b. 函数参数的定义和声

14、明应有相同的顺序,参数名应一致;c. 一个函数不应该有四层以上的嵌套,否则要分割成多个函数;d. 函数不要直接或间接调用自己。(245)下面说法符合规范的是_。a. 断言assert是仅在Debug版本起作用的宏,用来检查程序正常运行时不应发生但在调测时有可能发生的非法情况;b. 尽量使用断言函数参数的有效性;c. 使用断言可以对程序开发环境的假设进行检查;b. 不能使用断言规范数据类型的转换。(246)下面关于模块的说法符合规范的是_。a. 模块是一个或几个.c文件和一个.h文件的结合,头文件(.h)中是对于该模块接口的声明;b. 模块提供给其它模块调用的外部函数及数据需在.h中文件中以extern关键字声明;c. 模块内的函数和全局变量需在.c文件开头冠以s

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号