作业头
2-1
宏定义“#define DIV(a, b) a/b”,经DIV(x + 5, y - 5) 引用,替换展开后是(A)。 (1分)
x + 5 / y - 5
(x + 5 / y – 5)
(x + 5) / (y - 5)
(x + 5) / (y - 5);
2-2
定义带参数的宏“#define JH(a,b,t) t = a; a = b; b = t”,对两个参数a、b的值进行交换,下列表述中正确的是(B)。 (1分)
不定义参数a和b将导致编译错误
不定义参数a、b、t将导致编译错误
不定义参数t将导致运行错误
不需要定义参数a、b、t类型
2-3
如果所有的变量按照下面的程序进行定义和声明,那么在main()函数中所有可用的变量为 (C)。 (2分)
void fun(int x)
{
static int y;
……
return;
}
int z;
void main( )
{
int a,b;
fun(a);
……
}
x,y
x,y,z
a,b,z
a,b,x,y,z
2-4
如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为(A )。 (1分)
静态变量
动态变量
外部变量
内部变量
作者: 王从银
单位: 吉首大学
2-5
下面说法中正确的是()。 (1分)
若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态全局变量,以降低模块间的耦合度
若全局变量仅由单个函数访问,则可以将这个变量改为该函数的静态局部变量,以降低模块间的耦合度
设计和使用访问动态全局变量、静态全局变量、静态局部变量的函数时,需要考虑变量生命周期问题
静态全局变量使用过多,可那会导致动态存储区(堆栈)溢出
2-6
凡是函数中未指定存储类别的局部变量,其隐含的存储类型为(D )。 (1分)
自动(auto&#