C++/C 试题的答案与评分标准一、请填写 BOOL , float, 指针变量与“零值”比较的 if 语句
(10 分)请写出 BOOL flag 与“零值"比较的 if 语句
(3 分)标准答案: if ( flag ) if (
flag )如下写法均属不良风格,不得分
if (flag == TRUE)if (flag == 1 )if (flag == FALSE) if (flag == 0)请写出 float x 与“零值"比较的 if 语句
(4 分)标准答案示例:浮点数不能取到更精确的值,const float EPSINON = 0
00001;if ((x 〉 = - EPSINON) & & (x 〈 = EPSINON)不可将浮点变量用“==”或“
=”与数字比较,应该设法转化成“〉=”或“〈=”此类形式
如下是错误的写法,不得分
if (x == 0
0)if (x
0)请写出 char *p 与“零值”比较的 if 语句
(3 分)标准答案: if (p == NULL) if (p
= NULL)如下写法均属不良风格,不得分
if (p == 0)if (p
= 0)if (p) if (
)二、以下为 Windows NT 下的 32 位 C++程序,请计算 sizeof 的值(10 分)char str[] = “Hello” ;char *p = str ;int n = 10;请计算strlen 测字符串sizeof (str ) = 6 (2 分)sizeof ( p ) = 4 (2 分)sizeof ( n ) = 4 (2 分)void Func ( char str[100]){请计算sizeof( str ) = 4 (2 分)}void *p = malloc( 100 );请计算sizeof ( p )