《《C语言中用户标识符的作用域和存储类》》由会员分享,可在线阅读,更多相关《《C语言中用户标识符的作用域和存储类》(4页珍藏版)》请在金锄头文库上搜索。
1、C语言中用户标识符的作用域和存储类(总分:19.00,做题时间:90分钟)、B选择题/B(总题数:11,分数:11.00)1.以下只有在使用时才为该类型变量分配内存的存储类说明是1.00)A.auto和staticB.auto和registerC.register和staticD.extern和register解析:2.以下程序的输出结果是_ointf()staticinti=0;ints=1inti,a=0;for(i=0;i5;i+)a+=f():printf(%d/n”(分数:1.00);s+=i;i+;returns;,a);main()A.20B.24C.25D.15V解析:3.以下
2、叙述中正确的是(分数:1.00)A.B.C.局部变量说明为static存储类,其生存期将得到延长全局变量说明为static存储类,其作用域将被扩大任何存储类的变量在未赋初值时,其值都是不确定的形参可以使用的存储类说明符与局部变量完全相同D.解析:4.在一个C源程序文件中,若要定义一个只允许本源文件中所有函数使用的全局变量,用的存储类别是。则该变量使(分娄攵:1.00A.externB.registerC.autoD.staticV解析:5.以下程序运行后,输出结果是_。intd=1;fun(intp)intd=5;main()inta=3;fun(a);d+=a+;printf(H%d/nn,
3、d);d+=p+;printf(%d,d);(分:1.00)数A.84VB.99C.95D.44解析:6.以下说法不正确的为(分数:1.00)A.在不同函数中可以使用相同名字的变量B.形式参数是局部变量C.在函数内定义的变量只在本函数范围内有效D.在函数内的复合语句中定义的变量在本函数范围内有效解析:7.程序inta=3;main()(ints=0;(inta=5;s+=a+;s+=a+;printf(%d/n,s)有以下程序运行后的输出结果是。(分数:1.00)A. 8VB. 10C. 711解析:以下程序运行后,输出结果是_。func(inta,intb)(staticintm=0,i=2
4、;i+=m+1;m=i+a+b;returnm;main()(intk=4,m=1,p;p=func(k,m);printf(%d,p);p=func(k,m);printf(%d/n,p);份数=1.00)A. 8,15B. 8,16C. 8,17*8,8解析:以下叙述中不正确的是_o(分数:1.00)A. 函数中的自动变量可以赋初值,每调用一次,赋一次初值B. 在调用函数时,实参和对应形参在类型上只需赋值兼容C. 外部变量的隐含类别是自动存储类别V函数形参可以说明为register变量解析:以下程序的输出结果是_。intd=1;fun(intp)(staticintd=5;d+=p;pri
5、ntf(%d,d);return(d);main()(inta=3;printf(d/n”,fun(a+fun(d);份数:1.00)A. 699B. 669C. 61515V6615b+;C+;return(a+b+c);如果在下,i;for(i=0;i3;解析:?设有以下函数f(inta)(intb=0;staticintc=3面的程序中调用该函数,则输出结果是main()(inta=2i+)printf(%d/nf(a);(分:1.00A789VB. 7911C. 71013777解析:二、B填空题/B(总题数:4,分数:8.00)voidfun()staticinta=0;a+=212
6、.以下程序的输出结果是printf(,%dn,a);main()intcc;for(cc=1;cc4;cc+)fun();printf(7nH);(分数:2.00)填空项1:(正确答案:246)解析:13, 以下程序的输出结果是.fun();printf(%d%d/n,a,b)(分数:2.00)填空项1:解析:以下程序的输出的结果是incre()(staicintx=1;(分数:2.00)填空项1:解析:。inta,voidfun()(a=100;;(正确答57)。int;main()(inti;for(i=1x*=x+1;printf(H%dH,X);(正确答26)b=200;main()(inta=5,;ix;i+)incre();15.以下程序输出的最后一个。intff(intn)(staticintf=1;f=f*n;returnfmain();inti;for(i=1;i=5;i+)printf(%d”1(分数:2.00)填空项1:(正确答案:12624120)解析: