初识C语言数组

1.什么是数组

我们把一组数据的集合叫做数组,它所包含的每一个数据叫做数组元素,所包含的数据的个数称为数组长度。

例如:int[4]就定义了一个长度为 4 的整型数组,名字是a。

注意:

数组中的每个元素都有一个序号,这个序号从 0 开始,称为下标。使用数组 元素时,指明下标即可。

例如:将 1~10 这十个数字放入数组中:

#include <stdio.h>
int main() {
 int nums[10];
int i;
//将1~10放入数组中
 for (i = 0; i<10; i++) {
 nums[i] = (i + 1);
}
 //依次输出数组元素
 for (i = 0; i<10; i++) {
 printf("%d ", nums[i]);
 }
 return 0;
 }

运行结果如下:

 让用户输入十个数字并放入数组中:

#include <stdio.h>
int main() {
int nums[10];
int i;
for (i = 0; i<10; i++) {
scanf("%d", &nums[i]); //注意取地址符 &
}
for (i = 0; i<10; i++)
{
printf("%d ", nums[i]);
}
return 0;
}

输入十个数字如1 2 3 4 5 6 7 8 9 10,运行结果如下:

scanf() 读取数据时需要一个地址(地址用来指明数据的存储位置),而 nums[i] 表示一个具体的
数组元素,所以我们要在前边加 & 来获取地址。
数组定义时不只能定义int型,例如:
float m[12]; //定义一个长度为 12 的浮点型数组
 char ch[9]; //定义一个长度为 9 的字符型数组
注意:
1.数组中每个元素的数据类型必须相同,对于 int a[4],每个元素都必须为 int。
2.数组长度 length 最好是整数或者常量表达式,例如 10、20*4 等,这样在所有编译器下都能运行
通过;如果 length 中包含了变量,例如 n、4*m 等,在某些编译器下就会报错
3.访问数组元素时,下标的取值范围为 0 ≤ index(下标) < length
数组是一个整体,它的内存是连续的
#include <stdio.h>
int main()
{
int a[4] = { 20, 345, 700, 22 };
int b[4] = { 56720, 9999, 20098, 2 };
int c[4] = { 233, 205, 1, 6666 };
int d[4] = { 34, 0, 23, 23006783 };
printf("%-9d %-9d %-9d %-9d\n", a[0], a[1], a[2], a[3]);
printf("%-9d %-9d %-9d %-9d\n", b[0], b[1], b[2], b[3]);
printf("%-9d %-9d %-9d %-9d\n", c[0], c[1], c[2], c[3]);
printf("%-9d %-9d %-9d %-9d\n", d[0], d[1], d[2], d[3]);
return 0;
}

运行结果如下:

注:

数组元素的值由{ }包围,各个值之间以“,”分隔.

 对数组赋值时,可以只给部分元素赋值。当{ }中值的个数少于元素个数时,只给前面部分元素赋值。剩余的元素自动初始化为:

1.对于 short、int、long,就是整数 0;

2.对于 char,就是字符 '\0';

3. 对于 float、double,就是小数 0.0。

如果对全部元素赋值,那么在定义数组时可以不给出数组长度:

int a[] = {1, 2, 3, 4, 5};等价于int a[5] = {1, 2, 3, 4, 5};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值