下列代码段执行后,输出结果是( )。int i = 0; if(i == 0) { int i = 3; } printf("%d\n", i);
查看答案
若有以下函数: void fun(……) { static int a = 1; …… } 则下列说法错误的是( )。
A. 除首次调用外,调用 fun 函数时,静态变量 a 的初始值是前次调用结束时 a 的值
B. 在 fun 函数外,可以用变量名 a 直接引用静态变量 a 的值
C. 在其它函数中,可以出现变量声明:double a = 2.5;
D. fun 函数的形式参数不能取名为 a
函数 f 定义如下,执行语句:sum = f(5) + f(3); 后,sum 的值应为( )。int f(int m){static int i = 0;int s = 0;for(; i <= m; i++)s += i;return s;}
A. 21
B. 16
C. 15
D. 8
编译下列程序时,( )。#include “stdio.h"/* 1 行 */#define AA 123; /* 2 行 */int main(void) { /* 3 行 */printf("%d\n", AA); /* 4 行 */return 0; /* 5 行 */ }
A. 第 2 行出错
B. 第 4 行出错
C. 第 2 行、第 4 行均出错
D. 无错误
若有以下宏定义和语句:#define M(a, b) a * b; /* 1 行 */int x = M(3 + 1, 5 + 6), y; /* 2 行 */y = M(3, 4); /* 3 行 */则编译时,( )。
A. 第 1 行出错
B. 第 2 行出错
C. 第 3 行出错
D. 第 2 行和第 3 行出错