首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: int a=3; main() { int s=0; { int a=5; s+=a++; ) s+=a++; printf(’%d\n’,s); } 程序运行后的输出结
有以下程序: int a=3; main() { int s=0; { int a=5; s+=a++; ) s+=a++; printf(’%d\n’,s); } 程序运行后的输出结
admin
2013-02-23
20
问题
有以下程序: int a=3; main() { int s=0; { int a=5; s+=a++; ) s+=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。故4个选项中A正确。
转载请注明原文地址:https://kaotiyun.com/show/fOPp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是【】。main(){intp[7]={11,13,14,15,16,17,18};inti=0,j=0;while(i<7&&p[i]%2==1)j+=p[i++];printf(
若有以下定义和语句;doubler=99,*p=7;*p=r;则以下正确的叙述是()
“年龄在18—25之间”这种约束是属于数据库当中的()
用树型结构表示实体类型及实体间联系的数据模型称为【】。
数据库保护分为:安全性控制、【】、并发性控制和数据的恢复。
算法的工作量大小和实现算法所需的存储单元多少分别称为算法的【】。
下列数据中,不合法的C语言实型数据是
软件设计模块化的目的是【】。
程序段如下intk=-20;while(k=0)k=k+1;则以下说法中正确的是()
以下正确的说法是
随机试题
孙子说:“将者,智、信、仁、勇、严也”。用有关理论分析这句话的含义。
不平心持正,反欲(斗)两主,观祸败。(2008年真题)
正常者阅读25cm的书报时所需的调节力为
在施工成本控制的步骤中,分析是在比较的基础上,对比较结果进行的分析,以(),这一步是施工成本控制工作的核心。
下列有关功能价值分析的表述,正确的有()。
吉林省×××垦区有国有农、林、牧场13个,占地150万公顷,在实行经济改革前,各场生产水平、经济效益、经营管理及上交国家利润和税收方面差别很大,有的农场连年亏损,经济发展缓慢,职工收入不高,农场在组织管理体制及经营管理上很不适应市场经济发展。随着
某单位有A、B、C三个部门,三个部门的平均年龄依次是25岁、30岁、40岁.B、C两个部门的平均年龄是36岁,A、B两个部门的人数之比是5:4,问这个单位的平均年龄是多少岁?
湖南省现行行政区域在周朝时为荆州南境,()时期纳入楚国版图。
44,52,59,73,83,94,()
ChrisNiedenthal,aWarsaw-basedphotographer,hastakentoslatheringhischeesewithbutter.Whenhe’sthirsty,sometimesheg
最新回复
(
0
)