C语言:如果要定义一个可以存放5个元素的数组a,是int a[5]还是a[4]?

如题所述

你需要定义一个可以存放5个元素的数组,那就是
int a[4]
因为,数组的变量是从0开始的,比如你的第一个元素是一个int型的200,那么这个元素就被存放在a[0]中,然后是a[1].a[2].a[3].a[4],一共5个。
你只要记住数组是总0开始的就可以了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2006-02-23
从规规矩矩的语法来说用
int a[5];
数组元素是 a[0],a[1],a[2],a[3],a[4].

但编译也允许声明:
int a[1];
或 int a[2];
或 int a[3];
或 int a[4];
或 int a[5];

#include <stdio.h>
#include <stdlib.h>
main( )
{
int a[1];
int i = -1;
a[0] = 10;a[1] = 11;a[2] = 12;
a[3] = 13;a[4] = 14;a[5] = 15;
for (i=0;i<=5;i++)
printf("%d\n",a[i]);
exit(0);
}

结果:
10
11
12
13
14
15

用的编译器是VC++
第2个回答  2020-03-13
int数组,每个元素
一个字节。。。估计你听错了。
如果是
int的数组,
每个格子一个元素,
每个元素都是
4
字节
(8
bit
*
4
=
32
bit
=
4
bytes
=
1bytes
*
4

如果每个元素一个字节,估计是
char
a[5]
(c字符串)
第3个回答  2006-02-22
a[5]包含
a[0]-a[4]
5个元素
你输出a[5]的话就得到垃圾数据.
第4个回答  2006-02-22
定义a[5]
包含
a[0]到a[4]5 个元素
数组下标重0开始算
相似回答