设有语句static int a[8]={2,5,4,7};则表达式a[2]-a[5]的值是多少?

 我来答
Chock9898
高粉答主

2019-09-13 · 关注我不会让你失望
知道答主
回答量:85
采纳率:100%
帮助的人:1.7万
展开全部

4

原因:a[8]的数组的第一个元素是用a[0]表示,当用static int a[8]={1,2,3,4,5,6}时:a[0]=1,a[1]=2,a[6]=0,a[7]=0由于6以后你没赋初值,所以系统自动给它赋0。

C与C++#的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。

扩展资料:

1、引入static:函数内部定义的变量,在程序执行到它的定义处时,编译器为它在栈上分配空间,函数在栈上分配的空间在此函数执行结束时会释放掉。

2、static的作用:static静态变量声明符。在声明它的程序块,子程序块或函数内部有效,值保持,在整个程序期间分配存储器空间,编译器默认值0。

3、什么时候用static:需要一个数据对象为整个类而非某个对象服务,同时又力求不破坏类的封装性,即要求此成员隐藏在类的内部。

参考资料来源:百度百科-static

百度网友45e60e8
推荐于2017-10-01 · TA获得超过102个赞
知道小有建树答主
回答量:79
采纳率:0%
帮助的人:86.9万
展开全部
结果是4
首先是static,静态变量,当你不赋初值时,系统自动赋为0
然后,a[8]的数组的第一个元素是用a[0]表示,当你用static int a[8]={1,2,3,4,5,6}意思是说,a[0]=1,a[1]=2……,a[6]=0,a[7]=0……(6以后你没赋初值,所以系统自动给它赋0)

所以这个题目中a[2]=4,a[5]=0
更多追问追答
追问
还是不懂,是自动赋值法
是怎么自动赋值法
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱笑的aha520
2019-06-21
知道答主
回答量:1
采纳率:0%
帮助的人:736
展开全部
static为静态变量,所以赋值的第一个元素为a[0],没有赋值的都为0,所以a[0]=2,a[1]=5,a[2]=4,a[3]=7,a[4]=0,a[5]=0。则a[2]-a[5]=4-0=4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
错喆可易
2019-07-24 · TA获得超过3587个赞
知道小有建树答主
回答量:3223
采纳率:28%
帮助的人:220万
展开全部
首先得明确一点,c++中的数据是从0开始确定第一个数的,那么这里边的a[0]=2,a[1]=5,a[2]=4,a[3]=7,a[4]=a[5]=a[6]=a[7]=0,所以结果a[2]-a[5]=4-0=4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
萢萢i3
2015-06-22 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.7万
采纳率:71%
帮助的人:4723万
展开全部
a[2]是4,a[5]是0。
更多追问追答
追答
结果是4。
追问
为什么 a[2]是4,a[5]是0。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式