首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序 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
41
问题
有以下程序 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全国计算机二级
相关试题推荐
下列定义数组的语句中正确的是______。
当先后输入1、3、4、12、23时,屏幕上出现【】;再输入12时,则屏幕上出现【】。#include<stdio.h>#defineN5main(){inti,j,number,top,bott,min,loca,a[
程序的运行结果为【】。main(){intx,y,z;x=24;y=024;z=0x24;printf("%d,%d,%d\n",x,y,z);}
在具有n个单元、顺序存储的循环队列中,队满时,共有【】个元素。
在结构化方法中,软件功能分解属于软件开发中的______阶段。
C语言中,组成数据文件的成分是______。
设有以下定义的语句,则*(*(p+2)+1)的值为______。inta[3][2]={10,20,30,40,50,60},(*p)[2];p=a;
以下叙述不正确的是_____。
下列写法正确的是()。
随机试题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp。其中定义的类不完整,按要求完成下列操作,将类的定义补充完整。每卖出一个水果,则计算水果的重量,还要计算所有卖出水果的总重量以及总个数,同时允许退货,请按照以下的操作,把类补充完整。(1)定
网络设备自然老化的威胁属于人为威胁。()
腹股沟管位于
新生儿第一次接种乙肝疫苗在出生后()。
一批货物从中国运往欧洲,运货的货轮到达目的港后,发现所载货物因发霉受损。依《海牙规则》,霉损由于下列哪些原因所致应由承运人承担赔偿责任?()
背景材料: 某公路一级施工企业进行某高速公路合同段的施工。在其编制的施工组织设计中包括施工平面布置图,从图中反映了该工程的以下内容: (1)原有地形和地貌; (2)沿线的生产、行政、生活等区域的规划及其设施; (3)沿线的便道、便桥及其他
对在中国境内几地工作或提供劳务的临时来华人员,()。
作为贷款银行,对客户进行财务分析的最重要目的在于了解客户的()。
根据资源税法律制度的规定,下列各项中,不属于资源税征税范围的是()。
李某8岁的儿子小勇平时非常调皮,经常用石头砸坏别人的东西,攀摘花草树木等。一日,当小勇在家门口玩耍时,遇见刘某用三轮车拉着镜子。邻居王某见状说:“你敢不敢把那个镜子砸碎,敢的话就算你厉害。”小勇听完当即就拿起石头砸过去,结果致使价值600多元的镜子被砸碎。
最新回复
(
0
)