首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 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
55
问题
有以下程序 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全国计算机二级
相关试题推荐
在下面语句或函数中,不能描述选择结构的是
下面程序计算并输出的是PrivateSubCommand1Click()a=10:s=0Dos=s+a*a*a:a=a-1LoopUntila
以下关于VB的叙述中,错误的是()。
在某个事件过程中定义的变量是
有两个关系R和T如下:则由关系R得到关系T的操作是
下面不能作为结构化方法软件需求分析工具的是
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为( )。
在考生文件夹下有一个工程文件sjt4.vbp。窗体上有名称为Labell的标签和名称为Timerl的计时器控件。该程序的功能是在名称为Labell的标签中循环显示不同的字符串。程序开始运行,在标签中显示”第一项”(如图2-24所示),且每隔1秒钟依次显示”
在窗体上画一个文本框(名称为Text1)和一个标签(名称为Label1),程序运行后,在文本框中每输入一个字符,都会立即在标签中显示文本框中字符的个数。以下可以实现上述操作的事件过程是( )。
在一个有若干个整数的顺序文件中查找一个数(这个数从文本框中输人),找到后在标签Labell中显示该数是文件中第几个数;如果没找到,则显示文件中没有该数的信息PrivateSubCommandl_Click()DimXAsInt
随机试题
通常只在部分青少年可听到的心音是()
有一单相感应式电度表,表盘标有1kWh=3000盘转数,220V、2A。现在在额定电压下接一只200W的灯泡,圆盘转动两圈需要多少秒钟?
A.3.0mB.2.8mC.2.6mD.2.4mE.2.2m餐饮业的建筑要求大餐厅高度不低于
发热,热势不高,常在劳累后加剧,身倦乏力,气短懒言,自汗,易于感冒,食少便溏,舌质淡,苔白薄,脉细弱。辨证应属()
施工过程中监理人指示的变更根据情况可以进一步划分为()。
赢得值法中,当已完工作预算费用/计划工作预算费用()时,表示进度提前,即实际进度比计划进度快。
ECR系统并非是单个的零售店与单个的批发商组成的系统,而是许多零售店和许多批发商组成的大系统的整体运作方式。()
关于世界上各海峡所沟通的水域,下列说法正确的是:
Thousandsofproducts_____fromcrudeoilarenowindailyuse.
Ihavelearned,oftenthehardway,thatthereareafewsimplerulesabouthowtomakelifeeasierbothbeforeandafteryour【
最新回复
(
0
)