首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有下列程序: 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 ta++;} main() {int s
有下列程序: 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 ta++;} main() {int s
admin
2018-11-21
37
问题
有下列程序:
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 ta++;}
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。在intf(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://jikaoti.com/ti/u4a0FFFM
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下程序main()intx[]={1,3,5,7,2,4,6,0},i,j,k;for(i=0;i<3;i++)for(j=2;j>=i;j-
如下程序 main() { int x=1,a=O,b=O; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d\n",a,b); } 该程序的输出结果是_____
阅读以下程序#includemain(){IntCase;floatprintF;printf(“请输入2个数:”);scanf(“%d%f”,&Case,&printF);
下面程序main(){intx,y,m,n;x=5;y=8;m=++x,x;n=y+y++;printf("%d,%d,%d,%d",x,y,m,n);}运行后,x,y
有以下程序:#include#includemain(){chara[]={‘a’,‘b’,‘c’,‘d’,‘e’,‘g’,‘h’,‘\0’};intij;i=sizeof(a);j=strl
下面程序的输出结果是______。main(){inta[]={1,2,3,4,5,6,7,8,9,0,},*p;p=a;printf("%d\n",*p+9);}
以下程序的输出结果是_______。main(){charst[20]="hello\0\t\\";printf(%d%d\n",strlen(st),sizeof(st));}
有以下程序voidf(int*x,int*y){intt;t=*X;*X=*y;*y=t;}main(){inta[8]={1,2,3,4,5,6,7,8},i,*p,*q;p=a;
随机试题
摊丁入亩
______youfellinlovewithyourboss,whatwouldyoudo?
影响根分叉病变治疗效果的局部原因主要是
氯丙嗪作用机制为碳酸锂作用机制为
某工程的施工合同工期为16周,项目监理机构批准的施工进度计划图如图9-1所示。各工作均按匀速施工。施工单位的报价单(部分)见表9-1。工程施工到第4周末时进行进度检查,发生以下事件:事件1:A工作已经完成,但由于设计图纸局部修改,实际完成的工程
索引和文摘这两种文献包括原材料目录和文献目录。索引包括任何当前出版材料中的无数的文献目录,通常为期刊文章的文献目录。有时候,一些图书馆会主动提供材料,帮助读者查找期刊文章。例如,美国国家医学图书馆已出版了名为Medicus的索引,每月列出全世界3500家生
不同AS之间使用的路由协议是
Whatisprobablytheman’sposition?
你与Steven同在一家票务公司工作。他的客户打来电话要求改订机票。Steven不在,由你转告。任务:请你用英语给Steven留一张50个词左右的便条。告诉他:●哪位客户给他打来电话;●客户的具体要求;●如何与客户联系。便条写在答题卡2上该题的
peopleuseittoputsomethingintheplacewherepeoplecantakeplane
最新回复
(
0
)