C语言数组定义的问题:A[n]是定义了n个元素还是定义了n+1个元素?

C语言数组定义的问题:A[n]是定义了n个元素还是定义了n+1个元素?A[n]是定义了n个元素还是定义了n+1个元素?... C语言数组定义的问题:A[n]是定义了n个元素还是定义了n+1个元素?A[n]是定义了n个元素还是定义了n+1个元素? 展开
 我来答
My_Persistence
推荐于2017-12-15 · TA获得超过3467个赞
知道大有可为答主
回答量:1201
采纳率:81%
帮助的人:433万
展开全部
A[n]—表示定义了一个含有n个元素的一维数组,数组元素的范围:A[0]~A[n-1],没有A[n]这个元素的。
更多追问追答
追问
你好,我定义了A[1],并且确实输入了两个值到A[0]A[1],这怎么解释呢?并且也能够输出A[0]A[1]
追答

为什么呢,因为&A[1]这个地址在内存中是客观存在的,确实存在这个地址,这个没有错,你用scanf()函数这样赋值的话当然可以输出来啊。为什么C语言要规定没有A[n]这个值呢,这个涉及到范围边界问题。示例程序如下:

#include <stdio.h>
int main()
{
int a[3]={1,3,5}; //对数组初始化
int i;
for(i=0;i<=3;i++)
printf("a[%d]=%p\n",i,&a[i]); //输出数组元素的地址a[3]的地址值比a[2]的地址值大4
printf("\n");
for(i=0;i<=3;i++)
printf("a[%d]=%d\n",i,a[i]); //输出数组元素的值,输出a[3]的值是个随机值
return 0;
}

运行结果:

a[0]=0060FF00

a[1]=0060FF04

a[2]=0060FF08

a[3]=0060FF0C


a[0]=1

a[1]=3

a[2]=5

a[3]=3

科技艺术生活
2016-11-23 · TA获得超过265个赞
知道小有建树答主
回答量:328
采纳率:100%
帮助的人:151万
展开全部
在C数组中 定义一个A(N) 就有N个元素,比如 A(1) 就代表一个元素,访问时 为A(0)

至于定义的A(1)中 访问 A(1)时,有返回,,那是因为返回的值是\0,,即空。或者,结束符,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2016-11-23
展开全部
定义的时候 int A[n] 定义了n个元素
使用的时候 A[m] 代表第m+1个元素(起始位置是0)
例如一个队有10个人,报数,第一个人报0,第二个人报1,第三个人报2...第十个人报9
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
雪麟圣域AND森林首都
2016-11-23
知道答主
回答量:35
采纳率:0%
帮助的人:6.6万
展开全部
这个表示定义n个元素
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式