首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 #include 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++; } re
有以下程序 #include 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++; } re
admin
2020-07-28
40
问题
有以下程序
#include
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
解析
在一个源文件中如果外部变量和局部变量同名,则在该局部变量的作用域内,该外部变量会被"屏蔽",main()函数中调用两次f()函数,第一次调用为f(0),进入else选择支句,t=7,返回7+5=12,此时静态变量a=6;第二次调用为f(1),进入if选择支句,t=6,返回6+6=12,静态变量a=7;在主函数内s用全局变量a来初始化,其值为4,所以计算得s=4+f(0)+f(1)=28,答案选A。
转载请注明原文地址:https://www.kaotiyun.com/show/eh3p777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
关于C语言的变量,以下叙述中错误的是
以下选项中不能用作C程序合法常量的是
已知字符’A’的ASCII代码值是65,字符变量c1的值是’A’,c2的值是’D’。则执行语句printf("%d,%d",c1,c2-2);的输出结果是
以下不能输出字符A的语句是(注:字符A的ASCII码值为65,字符a的ASCII码值为97)
以下不合法的字符常量是
以下选项中正确的定义语句是
以下选项中合法的常量是
有以下程序main(){inta=-2,b=0;while(a++&&++b);printf("%d,%d\n",a,b);}程序运行后输出结果是
有以下计算公式若程序前面已经在命令行中包含math.h文件,不能够正确计算上述公式的程序段是
有下列程序:#include<stdio.h>main(){FILE*fp;intk,n,a[6]={1,2,3,4,5,6};fp=fopen("d2.dat","w");fprintf(fp,"%d%d%d\n",a[0],a[1]
随机试题
乳牙龋药物治疗时,具有腐蚀性的药物是
A、绿黑色B、樱红色C、白色D、浅橘红色E、黄色石膏的条痕
某市的大华家具厂和天使文具厂以联合体形式参加政府的采购,那么下列哪些是参加联合体的供应商应满足的要求?( )
下列有关绩效改进方法的表述,不正确的是()。
根据合伙企业法律制度的规定,下列关于有限合伙企业的表述中,正确的是()。
由呼吸道黏膜受刺激引起的以清除障碍物为目的的反射呼吸变化称为()。
下列选项与“我思故我在”观点一致的是()。
《色弗尔条约》
“从物到感觉和思想”与“从思想和感觉到物”是()。
下列关于域名的说法中,正确的是()。
最新回复
(
0
)