首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: 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); els
有下列程序: 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); els
admin
2016-12-18
37
问题
有下列程序:
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 nt 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/gNDp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序:main(){inta=3,b=4,c=5,d=2;if(a>b)if(b>c)printf("%d",d+++1);elseprintf("%d",++d+1);
写出下列程序的输出结果______。main(){intn=0;while(n++<=1);printf("%d,",n);printf("
以下能正确定义数组并正确赋初值的语句是______。
设有下列的程序段:charstr[]="HelloWorld";char*ptr;ptr=str;执行上面的程序段后,*(ptr+10)的值为()。
设在C语言中,float类型数据占4个字节,则double类型数据占()个字节。
下列叙述中正确的是
下列叙述中,正确的是
具有3个结点的二叉树有
数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和
设循环队列的存储空间为Q(1:30),初始状态为front=rear=30。现经过一系列入队与退队运算后,front=16,rear=15,则循环队列中有【】个元素。
随机试题
构成传染病流行过程的三个基本条件是
阿西美辛分散片【处方】阿西美辛30gMCC120gCMS—Na30g淀粉115g1%HPMC溶液适量微粉硅胶3g处方中的填充剂为()。
根据企业所得税法律制度的规定,企业发生的下列支出中,在计算应纳税所得额时准予扣除的是()。
鲁班被古代的建筑工匠尊称为祖师,他最著名的贡献是发明了:
根据下面材料回答问题。2006年,三口之家的上海市农村居民家庭年现金收入大约为()。
学生在理解“力”概念的基础上,再来学习“重力”的概念。这种学习属于()
刘先生一定是已经结了婚的,你看,他身上的衣服总是穿得精神得体、干干净净的。以上这个结论是以下述哪项前提作为依据的?
A、 B、 C、 D、 B
考生文件夹下有一个数据库文件“samp2.accdb”,其中存在已经设计好的两个表对象“tEmployee”和“tGroup”。请按以下要求完成设计。创建一个查询,查找并显示没有运动爱好的职工的“编号”、“姓名”、“性别”、“年龄”和“职务”5个字段内
Thewomanwas______tiredthatshecouldn’twalkon.
最新回复
(
0
)