3.1 选择题
(221) 请选出可用作C语言用户标识符的一组标识符____
a. Void define WORD
b. a3_b3 _123 IF
c. For -abc Case
d. 2a Do sizeof
(222) 请选出正确的标识符编号____
a. Hot_dog
b. $z^**
c. cat1
d. a11
e. SUM#
f. Dollar
g. 2dog
h. S_exp
i. ^pointer
(223) 下面符合规范的函数原型声明有哪些____。
a. T_S16 CheckData();
b. T_S16 CheckData(void)
c. T_S16 SetPoint(T_S16, T_S16)
d. T_S16 SetPoint(T_S16 nX, T_S16 nY)
(224) 声明头文件引用时,避免使用绝对路径,要使用相对路径。以下符合规范的头文件引用有哪些______。
a. #include "c:/switch/inc/def.inc";
b. #include "inc/def.inc"
c. #include "def.inc"
d. #include "../def.inc"
(225) 按照编码规范,头文件由_____组成:
a. 头文件开头处的版权和版本声明;
b. API函数的调用示例
c. 预处理块
d. 函数和类结构定义
(226) 代码文件由_____组成:
a. 定义文件开头处的版权和版本声明;
b. API函数的调用示例
c. 全局变量的声明
d. 程序的实现体(包括数据和代码)
(227) 按照编码规范,符合规范的程序块是____。
a. if(!ValidNi(ni))
{
…
}
nRepssnInd=SsnData[index].nRepssnIndex;
nRepssnNi=SsnData[index].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 = SsnData[index].nRepssnIndex;
nRepssnNi = SsnData[index].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. 在一个函数体内,逻揖上密切相关的语句之间不加空行,其它地方应加空行分隔;
d. 函数体内,变量定义与第一句可执行语句之间不需要加空行分隔.
(229) 以下程序的代码行风格符合规范的是_____。
a. rect.length = 0; rect.width = 0;
b. rect.length = width = 0;
c. rect.length = 0;
rect.width = 0;
d. typedef struct
{
T_U16 nLeft, nTop, nRight, nBottom;
}RECT;
e. typedef struct
{