| 贵州学习网—属于你的学习中心 |
|
一、选择题: (1)有以下程序 int a=2; int f(int n) { static int a=3; int t=0; if(n%2){ static int a=4; t += a++; } else { static int a=5; t += a++; } return t+a++; } main() { int s=a, i; for( i=0; i<3; i++) s+=f(i); printf("%d\n", s); } 程序运行后的输出结果是______ a)26 b)28 c)29 d)24 (2) 以下叙述中正确的是______ a) 局部变量说明为static存储数,其生存期将得到延长 b) 全局变量说明为static存储类,其作用域将被扩大 c) 任何存储类的变量在未赋初值时,其值都是不确定的 d) 形参可以使用的存储类说明符与局部变量完全相同 (3) 有以下程序 int a=2; int f(int *a) {return (*a) ++;} main( ) { int s=0; { int a=5; s+=f(%26amp;a) ; } s+=f(%26amp;a) ; printf(“%d\n”,s); } 执行后输出结果是______ a) 10 b) 9 c) 7 d) 8 (4) 以下叙述中正确的是______ a) 全局变量的作用域一定比局部变量的作用域范围大 b)静态(static)类别变量的生存期贯穿于整个程序的运行期间 c)函数的形参都属于全局变量 d)未在定义语句中赋初值的auto变量和static变量的初值都是随机值 (5) 有以下程序 int a=3; main() { int s=0; { int a=5; s+=a++; } s+=a++;printf(“%d\n”,s); } 程序运行后的输出结果是______ a) 8 b) 10 c) 7 d) 11 (6) 以下程序的输出结果是______ int f() { static int i=0; int s=1; s+=i; i++; return s; } main() { int i,a=0; for(i=0;i<5;i++) a+=f(); printf("%d\n",a); } a) 20 b) 24 c) 25 d) 15 (7) 在c语言中,形参的缺省存储类是______ a) auto b) register c) static d) extern (8) 以下程序的输出的结果是______ int x=3; main() { int i; for (i=1;i ncre() { staic int x=1; x*=x+1; printf(" %d",x); } a) 3 3 b) 2 2 c) 2 6 d) 2 5 (9 ) 设有以下函数: f ( int a) { int b=0; static int c = 3; b++; c++; return(a+b+c); } 如果在下面的程序中调用该函数,则输出结果是______ main() { int a = 2, i; for(i=0;i<3;i++) printf(“%d\n”,f(a)); } a) 7 b) 7 c) 7 d) 7 8 9 10 7 9 11 13 7 (10) 以下程序的输出结果是______ int a, b; void fun() { a=100; b=200; } main() { int a=5, b=7; fun(); printf(“%d%d \n”, a,b); } a) 100200 b) 57 c) 200100 d) 75 |
责任编辑:gzu521