若有以下程序: #includevoid f1(int n); int main(){ void f2(int n); f1(5); return 0; } void f1() { f2(1);} void f2(int n) { printf("%d\n",n);} 则以下叙述中不正确的是()。
A. 只在主函数中对函数f2进行了声明,则只能在主函数中正确调用函数f2
B. 在主函数前对函数f1进行说明,则在其后的函数中都可以正确调用函数f1
C. 对于以上程序,编译时系统会提示错误,提示对f2函数没有正确声明
D. 函数f2已经在main函数中声明,可以在其后的任一函数中调用f2
查看答案
关于函数的原型声明,下面说法错误的是()。
A. 函数应当定义在先,调用在后
B. 将函数定义的首部原样复制到被调用处之前,再加上分号,就是函数原型声明
C. 函数的原型声明中形参可以只保留类型,省略变量名
D. 只要有了函数声明语句,就可以在程序的所有函数中调用该函数
为保证整型变量n其在未赋值的情况下初值为0,应选择的存储类别是()。
A. auto
B. register
C. static
D. auto或register
设有下列程序段: static char b=2; void Y() { static float d=4;……} int a=1; void X() { int c=3;……} 关于程序段的各变量的属性,以下叙述错误的是()。
A. a是全局变量,函数X可以访问,函数Y不能访问
B. b是全局变量,函数X和函数Y都可以访问
C. c是动态变量,函数X可访问,函数Y不可访问
D. d是静态变量,函数X和函数Y都可以访问
以下选项中叙述错误的是()。
A. c程序函数中定义的赋有初值的静态变量,每调用一次函数,赋一次值
B. c程序的复合语句中可以定义变量,其作用域仅限本复合语句
C. c程序函数中定义的自动变量,系统不会自动赋给确定的初值
D. c程序函数的形参不可以说明为static型变量