首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: int a=4; int f(int n) {int t=0;static int a=5; if(n%2){int a=6;t+=a++;} else{int a=7;t+=a++;} return t+a++; }
有下列程序: int a=4; int f(int n) {int t=0;static int a=5; if(n%2){int a=6;t+=a++;} else{int a=7;t+=a++;} return t+a++; }
admin
2019-08-18
42
问题
有下列程序:
int a=4;
int f(int n)
{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/YlRp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下选项中,合法的一组C语言数值常量是()。
有以下程序:#includemain(){inta=5,b=1,t;t=(a<<2)|b;printf("%d\n",t);}程序运行后的输出结果是()。
若变量已正确定义,在if(W)printf("%d\n",k);中,以下不可替代W的是()。
有以下计算公式:y=若程序前面已在命令行中包含math.h文件,不能够正确计算上述公式的程序段是()。
C语言中double类型数据占字节数为
以下叙述中正确的是
在学生管理的关系数据库中,存取一个学生信息的数据单位是
数据字典(DD)所定义的对象都包含于
C语言程序中,运算对象必须是整型数的运算符是
软件测试的实施步骤是
随机试题
阳羡词派
外感热病中,正邪相争,提示病变转折点为
患者,女性,36岁,诊断为特发性血小板减少性紫癜,入院后告知患者禁用的药物是()。
保税区与境外之间进出的货物,海关实行()的申报方式。
根据《企业破产法》,人民法院受理破产申请前()个月内,债务人达到破产界限,仍对个别债权人进行清偿的,管理人有权请求人民法院予以撤销。
甲公司2017年12月计入成本费用的工资总额为400万元,至2017年12月31日尚未支付。假定按照税法规定,当期计入成本费用的400万元工资支出中,可予税前扣除的金额为300万元。甲公司所得税税率为25%。假定甲公司税前会计利润为1000万元。不考虑其
在“查找和替换”的高级功能对话框中,“搜索范围”列表框是“全部”选项表示从_________开始向文档末尾查找,然后再从_________查到插入点处。
把下面的六个图形分为两类,使每一类图形都有各自的共同特征或规律,分类正确的一项是:
Anidealcollegeshouldbeacommunity,aplaceofclose,natural,intimateassociation,notonlyoftheyoungmenwhoareitsp
Architectureisartandtechniqueofdesigningandbuilding,asdistinguishedfromtheskillsassociatedwithconstruction.The
最新回复
(
0
)