首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: int a:4: int f(int n) main() { int t=0: static int a=5; {int s=a,i=0; if(n%2){i
有下列程序: int a:4: int f(int n) main() { int t=0: static int a=5; {int s=a,i=0; if(n%2){i
admin
2020-07-28
31
问题
有下列程序:
int a:4:
int f(int n) main()
{ int t=0: static int a=5; {int s=a,i=0;
if(n%2){int a=6;t+=a++;} for(;i<2;i++)s+=f(i);
else{int a=7;t+=a++;} printf("%d\n",s);
return t+a++;} }
程序运行后的输出结果是
选项
A、28
B、24
C、32
D、36
答案
A
解析
程序中定义了全局整型变量a=4。在int f(int n)函数中定义了局部静态整型变量并进行了初始化即static int a=5。在int f(int n)函数中对n是否是偶数进行判断,如果n是奇数,则函数的返回值为11,局部静态整型变量a=6;如果n是偶数,则函数的返回值为12,局部静态整型变量a=6。所以在main()函数中循环首先执行s+=f(0)语句,而f(0)返回值12,所以第一次循环结束s的值等于4+12=16:第二次开始执行f(1)时,在f(1)中执行“if(n%2){int a=6;t+=a++;}”和“return t+a++;”这两条语句,这时t=6,a=6(静态局部变量第一次循环后其值加1值不释放,执行第二次循环量,其值仍有效),所以f(1)的返回值等于12。再在主函数中执行s+=f[1)语句,即16+12=28。
转载请注明原文地址:https://jikaoti.com/ti/nrD0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若有定义:inta,b,c;,想通过语句:scanf("%d,%d%d",&a,&b,&e);把1、2、3分别输入给变量a、b、c,则正确的键盘输入是()。
在黑盒测试方法中,设计测试用例的主要根据是()。
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,编写函数fun,其功能是:求ss所指字符串中指定字符的个数,并返回此值。例如,若输入字符串123412132,输入字符为1,则输出
下列叙述中正确的是()。
以下叙述中错误的是()。
若有定义语句:intm[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中错误的是()。
若有定义语句:chars[10]="1234567\0\0";,则strlen(s)的值是()。
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,请编写函数fun,其功能是:统计s所指字符串中的数字字符个数,并作为函数值返回。例如,s所指字符串中的内容是:2det35adh2
使用VC++2010打开考生文件夹下prog1中的解决方案。此解决方案的项目中包含一个源程序文件prog1.c。在此程序中,已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最高的学生记录,通
使用VC++2010打开考生文件夹下modi1中的解决方案。此解决方案的项目中包含一个源程序文件modi1.c。在此程序中,函数fun的功能是:将p所指字符串中的所有字符复制到b中,要求每复制三个字符之后插入一个空格。例如,若给a输入字符串:“ABCDE
随机试题
下述有关高血压的治疗原则,不正确的是()。
在建设工程知识产权侵权的民事责任中,确定赔偿损失数额,首选的方法是()。
本票是付款承诺,无需承兑,其出票人始终是主债务人;汇票需要经付款人承兑,承兑后承兑人成为主债务人,出票人降为从债务人。()
下列关于预期收益水平和风险的关系,说法正确的有()。
教育教学时,教师因感受到目标的实现而得到愉快和满足的道德情感是自豪感。()
下列说法正确的是()。
课程
结合材料回答问题:材料1作为中国自主创新的结晶,北斗导航系统的发展历程,浓缩着中国科技创新的不凡之路,写照着中国人向着星辰大海进发的不屈志气。正如北斗一号卫星总指挥李祖洪所说,“北斗的研制,是中国人自己干出来的。‘巨人’对我们技术封锁,不让我们
CSMA/CD发送流程为:先听后发,边听边发,冲突停止,__________延迟后重发。
下列描述中正确的是
最新回复
(
0
)