首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: int a=4: int flint n1 {int t=0;static int a=5; if(n%2){int a=6;t+=a++;} else{int a=7;t+=a++;) ret
有下列程序: int a=4: int flint n1 {int t=0;static int a=5; if(n%2){int a=6;t+=a++;} else{int a=7;t+=a++;) ret
admin
2015-08-14
20
问题
有下列程序:
int a=4:
int flint n1
{int t=0;static int a=5;
if(n%2){int a=6;t+=a++;}
else{int a=7;t+=a++;)
return t+a++;
}
main()
{int s=a,i=0;
for(;i<2;i++)s+=f(i);
printf("%d\n",s);
}
程序运行后的输出结果是
选项
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://kaotiyun.com/show/GFDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
若已包括头文件<stdio.h>和<string.h>,运行下列程序段时输出结果是()。inti=0;chars1[10]="ABCD",s2[10]="EFG";strcat(s1,s2);while(s2[i
在嵌套使用if语句时,C语言规定else总是()。
结构化程序设计的3种基本结构是()。
#define命令出现在程序中函数的外面,宏名的有效范围为______。
语句“int(*ptr)();”的含义是______是指向函数的指针,该函数返回一个int型数据。
若有下列定义和语句:intu=011,v=Ox11,w=11;printf("%o,%x,%d\n”,u,v,w);则输出结果是()。
在C语言中,while和do…while循环的主要区别是______的循环至少被执行一次。
若函数调用时,参数为基本数据类型的变量,下列叙述中正确的是()。
判断char型变量c1是否为小写字母的正确表达式为()。
以下条件表达式可计算:1+|a|的值,请填空。a>=0?【】:【】
随机试题
小建中汤和大建中汤共有的组成药物是
对放射线不敏感的肿瘤是
A.医患关系是一种民事法律关系B.医患关系是具有道德意义较强的社会关系C.医患关系是一种商家与消费者的关系D.医患关系是包括非技术性和技术性方面的关系E.医患关系是患者与治疗者在诊疗和保健中所建立的联系反映医患关系本质的是()
下列哪些情形属于中级人民法院管辖?()
工程项目建设总进度计划中包括()。
以下不属于初始化设置的内容的是()。
下列选项中,不属于商业银行市场风险限额管理的是()。
某债券面值为1000元,期限为5年,以折现方式发行,期内不计利息,到期按面值偿还,当时市场利率为8%。则企业购买此债券,其发行价必须低于()元。
安排旅游者的文娱活动,主要是为了让他们欢乐,不必过多考虑其他因素。()
社会上出现“空巢老人”和“两代老人共同居住”的情况.而在养老院却一床难求,请你提几点建议。
最新回复
(
0
)