首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: 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++;)
有下列程序: 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++;)
admin
2013-10-19
61
问题
有下列程序:
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++;)
retum 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(intn)函数中对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://www.kaotiyun.com/show/EqJp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是______。main(){intx=05;charz=’a’;printf("%d\n",(x&1)&&(z<’z’));}
以下程序中,函数SumColumMin的功能是:求出M行N列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。#defineM2#defineN4voidSumColumMin(i
设有如下定义:strucksk{inta;floatb;}data;int*p;若要使p指向data中的a域,正确的赋值语句是()。
下面程序的输出结果是()。chars()="ABCD",*p;main(){for(p=s;p<s+4;p++)printf("%s\n",p);)
下面程序的运行结果是() #include<stdio.h> #include<string.h> main() {char*a="AbcdEf",*b="aBcD" a++;b++; printf("%d\
C语言中下列叙述正确的是_______。
下列不属于软件工程三要素的是
结构化程序设计的主要任务是确定每个模块的
随机试题
甲企业为了进入国际市场,采用特许经营的形式与目标市场国家的乙企业订立了长期的无形资产转让合同,甲企业采取的进入国际市场的模式是()。
哮病发生的“夙根”是
没有致病性的霍乱弧菌是()
丙公司的记账本位币为人民币。20×9年12月18日,丙公司以每股15美元的价格购入丁公司B股10000股作为交易性金融资产,当日即期汇率为1美元=7.2元人民币。20×9年12月31日,丁公司股票收盘价为每股19.5美元,当日即期汇率为1美元=7.1元
阅读下列材料,回答问题。A省甲公司拟于2016年向欧盟出口钨粉80吨。2015年8月6日,甲公司向A省商务厅申请办理钨粉出口许可证,被告知钨产品出口配额由A省人民政府行政许可服务中心集中分配,甲公司于2015年8月13日向行政服务中心报送申请钨粉
胡夫金字塔:埃及
改土归流
社会主义发展史的两次飞跃()
【B1】【B7】
Readingisthoughttobeakindofconversationbetweenthereaderandthetext.Thereaderputsquestions,asitwere,tothet
最新回复
(
0
)