首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include int f(int n); main() { int a=3,s; s=f(a);s=s+f(a);prinff(“%d\n”,s); } int f(int n)
有以下程序: #include int f(int n); main() { int a=3,s; s=f(a);s=s+f(a);prinff(“%d\n”,s); } int f(int n)
admin
2021-04-28
80
问题
有以下程序:
#include
int f(int n);
main()
{ int a=3,s;
s=f(a);s=s+f(a);prinff(“%d\n”,s);
}
int f(int n)
{ static int a=1;
n+=a++:
retum n:
}
程序运行后的输出结果是( )。
选项
A、7
B、8
C、9
D、10
答案
C
解析
首先main函数中的局部变量a和f()函数中的静态局部变量a的作用域都只限在其所在的函数中,相互之间不影响,看作两个不同的变量即可。另外,f()函数中的静态局部变量a只在第一次调用f()函数时初始化一次,其他调用都会保留上一次调用结束时的值。分析main函数可知,第一次调用时将f(a)的返回值赋给s,所以语句可以改写为:s=f(a)+f(a),即main函数中调用两次f(a),传入的参数8取值都为3,第一次调用时,静态局部变量初始化为1,所以n=4并返回,a自增为2;第二次调用时静态局部变量a取上一次调用结束时的值2,所以n=5并返回,a自增为3。所以在main()函数中,s=4+5=9,所以函数执行完输出结果为9,答案为C。
转载请注明原文地址:https://kaotiyun.com/show/uRtp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序#includevoidfun(inta[],intn){inti,j=0,k=n-1,b[10];for(i=0;i
有以下程序:#include<stdio.h>main(){inta=1,b=2,e=3,x;x=(a∧b)&c;printf(’’%d\n’’,x);}程序的运行结果是(
在下列选项中,没有构成死循环的程序段是()。
执行以下程序后,test.txt文件的内容是(若文件能正常打开)#include<stdio.h>main(){FILE*fb;char*s1="Fortran",*s2="Basic";if((fb=fopen("test.txt","wb")
若有以下语句typedefstructS{intg;charh;}T;以下叙述中正确的是
以下选项中,合法的一组C语言数值常量是
有以下程序#includestructord{intx,y;}dt[2]={1,2,3,4};main(){structord*p=dt;printf("%d,",++(p->x));printf("%d\n",++(p->y
在一个C源程序中所定义的全局变量,其作用域为
随机试题
甲公司贿买乙公司员工,获得乙公司的客户名单和货源情报。其后,甲公司利用获得的客户名单和情报信息与乙公司的客户进行交易。甲公司的行为侵害了乙公司的()。
感染性心内膜炎的常见并发症
关于脂质体表述正确的是( )。
大孔吸附树脂的原理是()
注册建造师张某辞去了原施工单位的工作,受聘于一家建设工程招标代理公司,他办理变更注册手续时应提交的材料有()。
金融寡头实现其在经济上的统治主要是通过
党的十九大报告指出:“经过长期努力,中国特色社会主义进入了新时代,这是我国发展新的历史方位。”下面关于新时代的理解,正确的是
DuringMcDonald’searlyyearsFrenchfriesweremadefromscratcheveryday.RussetBur-bankpotatoeswere【C1】______,cutintos
磁盘文件操作中,打开磁盘文件的访问方式常量中,()是以追加方式打开文件的。
By2003anestimated42millionpeoplewereinfected【S1】______andmorethan20millionpeoplehaddiedofAIDS.AUnitedNation
最新回复
(
0
)