首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<stdio.h> int a=1; int fun(intC){static int a=2; c=c+1; return(a++)+c; } main() { int i,
有以下程序: #include<stdio.h> int a=1; int fun(intC){static int a=2; c=c+1; return(a++)+c; } main() { int i,
admin
2011-06-13
24
问题
有以下程序: #include<stdio.h> int a=1; int fun(intC){static int a=2; c=c+1; return(a++)+c; } main() { int i,k=0; for(i=0;i<2;i++){int a=3;k+=f(A);} k+=a; printf("%d\n",k); } 程序的运行结果是( )。
选项
A、14
B、15
C、16
D、17
答案
A
解析
本题考查的重点是对static变量以及全局变量的理解。static变量是函数或文件中的永久变量。本题中static int a=2语句定义了一个static局部变量,编译程序为其生成永久存储单元,即调用函数fun时,其值一直都保存着,而不是使用函数外所赋的值(尽管开头定义了一个同名的全局变量)。在主函数中,for循环进行两次,第一次循环得f(3)=3+1+2=6,从而k+=f(3)=6,第二次循环由于static局部变量a变成了3,从而f(3)的值为7,故k+=f(3)=13,再执行k+=a时,此时a的值为全局变量,其值为1,故k的值为14,选项A是正确的。
转载请注明原文地址:https://kaotiyun.com/show/OkPp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
用以下语句调用库函数malloc,使字符指针st指向具有11个字节的动态存储空间,请填空。st=(char*)【】;
用树形结构来表示实体之间联系的模型称为()。
设有定义:intk=1,m=2;floatf=7;,则以下选项中错误的表达式是
下列数据中,不合法的C语言实型数据的是()。
设有定义:intn1=0.n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是
下面描述中,不符合结构化程序设计风格的是
对如下二叉树进行后序遍历的结果为()。
已知、棵二叉树的后序遍历序列是dabec,中序遍历序列是debac,则它的前序遍历序列是()。
C语言中用于结构化程序设计的三种基本结构是
软件测试中路径覆盖测试是整个测试的基础,它是对软件【】进行测试。
随机试题
被誉为“新时期思想解放的第一个宣言书”是()
IagreewithyouthatDavidisacleverguy,butIthinkhe______veryfoolishjustnow.
花斑癣在Wood灯下呈现
Weber综合征的病损部位
可用于苯巴比妥的鉴别方法有
介绍新药,答复咨询,编写《药讯》,必须与临床有关的研究、生产、流通、使用和管理领域的信息,必须
其他货币之间的汇率,套算出本币对其他货币的汇率,这就是()。
你是检验检疫局宣传人员。在带领媒体参观某重要港口的工作情况时。碰巧有一艘船在卸载大米。地上有些散落的大米和几只死亡的麻雀。记者见状纷纷拍照。请问你怎么处理?
在以下给出的表达式中,与while(E)中的(E)不等价的表达式是
越来越多的研究表明,体育活动对我们的心理健康有很大的影响。(reveal)
最新回复
(
0
)