首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 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
2009-01-15
28
问题
有以下程序 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;在这条语句中a加1,但表达式a++还是原来的值,故s=s+5,s为5,程序执行到外层,此时{}内定义的变量a不再有效,此时的变量a为{}之前定义的且初值为3,接着执行{}后面的语句s+=a++;相当于执行语句s=s+(++);即 s=5+3,最后值为8,所以最后输出的s值为8。所以4个选项中A正确。
转载请注明原文地址:https://kaotiyun.com/show/lBXp777K
本试题收录于:
二级C语言题库NCRE全国计算机二级分类
0
二级C语言
NCRE全国计算机二级
相关试题推荐
有数据定义语句:DimX,YAsInteger以上语句表明
命令按钮Command1的单击事件过程如下:PrivateSubCommand1_Click()Dima(10,10)AsIntegerx=0Fori=1To3Forj=1To3a(i,j)=i*2ModjIfx<a(i,j)
以下叙述中错误的是
有下面事件过程:PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)IfButton=2ThenForm1.PSet(X,Y)’
为使程序运行时通用对话框CD1上显示的标题为“对话框窗口”,若通过程序设置该标题,则应使用的语句是
以下自定义数据类型的语句中,正确的是
在考生文件夹下有一个工程文件sjt3.vbp,相应的窗体文件为sjt3.frm,包含了所有控件和部分程序,如图2-183所示。要求如下:①利用属性窗口向列表框添加四个项目:VisualBasic、TurboC、C++、Java。②请编写适当的程序完
已知a=6,b=15,c=23,则语句PrintSgn(a+b.Mod6-c\a)&a+b的输出结果为
在考生文件夹下,存在一个数据库文件“samp2.accdb”,里面已经设计好三个关联表对象“tStud”、“tCourse”、“tScore”和一个临时表对象“tTemp”。试按以下要求完成设计。(1)创建一个查询,按所属院系统计学生的平均年龄,
下列链表中,其逻辑结构属于非线性结构的是
随机试题
分度头蜗杆副的啮合间隙会影响分度精度。()
论述国际营销有利于实现消费者利益的持续发展的表现。
A、枕骨B、颏骨C、骶骨D、臀部E、面部枕先露的指示点是
组织坏死后,组织细胞结构消失,坏死细胞蛋白凝固,正常保持其轮廓残影,此病灶属于
企业所得税的纳税人从关联方取得的借款金额超过其注册资本50%的,超过部分的利息支出,在计算应纳税所得额时,不得从收入总额中扣除。( )
在社会主义分配制度上,我们要建立以按劳分配为主体、多种分配方式并存的个人收入分配制度,体现()的原则。
社会生产总过程包括生产、分配、交换、消费四个环节,其中()。
附加值是附加价值的简称,是在产品原有价值的基础上,通过生产过程中的有效劳动新创造的价值,即附加在产品原有价值上的新价值。根据上述定义,以下行为提高了产品附加价值的是:
穷山:僻壤
Whatdoesthemanmean?
最新回复
(
0
)