首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 int a=3; main() {int s=0; { int a=5;s+=a++;} 8+=a++;printf(“%d\n”,s); } 程序运行后的输出结果是
有以下程序 int a=3; main() {int s=0; { int a=5;s+=a++;} 8+=a++;printf(“%d\n”,s); } 程序运行后的输出结果是
admin
2013-02-23
35
问题
有以下程序 int a=3; main() {int s=0; { int a=5;s+=a++;} 8+=a++;printf(“%d\n”,s); } 程序运行后的输出结果是
选项
A、8
B、10
C、7
D、11
答案
1
解析
本题中定义一个全局变量a和一个局部变量a。局部变量和全局变量的不同在于,局部变量的存储单元都是在进入这些局部变量所在的函数体(或复合语句)时生成,退出其所在的函数体(或复合语句)时消失,而全局变量是在函数外部任意位置上定义的变量,它的作用域从变量定义的位置开始,到整个源文件结束为止。若全局变量和某一函数中的局部变量同名,则在该函数中,此全局变量被屏蔽,在该函数内,起作用的将是局部变量,与同名的全局变量不发生任何关系。 在程序中首先定义了变量s并赋值为0,接着在嵌套的复合语句{}中定义了变量a并赋初值为5,接着执行语句s+=a++;在这条语句中a加1,但表达式a++还是原来的值,故s=s+5,s为5,程序执行到外层,此时{}内定义的变量a不再有效,此时的变量a为{}之前定义的且初值为3,接着执行{}后面的语句s+=a++;相当于执行语句s=s+(a+ +);即s=5+3,最后值为8,所以最后输出的s值为8。
转载请注明原文地址:https://kaotiyun.com/show/g1Jp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有以下函数char*fun(char*p){returnp;}该函数的返回值是_____。
假设在turboc2.0采用small模式编译如下程序main(){chara[4]={’a’,’b’};char*b="abc";printf("%d,%d",sizeof(A),sizeof(B));
在C语言中,函数中变量的隐含存储类别是_____。
对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为______。
在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是______。
在数据流图(DFD)中,带有名字的箭头表示
若有以下定义和语句,则对w数组元素非法引用的是______。intw[2][3],(*pw)[3];pw=w;
下列说法中不正确的是()
一般来说,算法可以用顺序、选择和【】三种基本控制结构组合而成。
在C语言中,合法的字符常量是()
随机试题
肺梗死三联症不包括
皮瓣移植术后易发生血运障碍的时间是
带状疱疹患者首选的抗病毒药物是()。
业务核算是施工成本分析的依据之一,其目的是()。
某企业采用实际成本法进行材料的核算,在采购原材料时,如果已经支付款项或已开出商业承兑汇票,但材料尚未到达,对该材料应当通过下列()账户进行核算。
根据财政部《会计人员继续教育暂行规定》,会计人员每年参加继续教育的时间累计不得少于()。
拼箱的做法可以使得拥有不足一个整箱货的牦运人在共用一个集装箱时,可以分担一个整箱的运费。()
行政立法的原则是()。
YouwillhearpartofaninterviewbetweenJessiePaul,theglobalmarketingheadinQuintant,andaninterviewer.Foreachques
【11】【14】
最新回复
(
0
)