C语言中的“数组”

数组

  • 什么是数组
  • 数组和地址
  • 多维数组
  • 字符串数组
  • 数组和指针

什么是数组

数组是一组数目固定、类型相同的数据项,数组中的数据项称为元素。
数组中的元素都是int 、 long 或其他类型。

下面的数组声明非常类似于声明一个含有单一数值的正常变量,但要在名称后的方括号中放置一个数。
long numbers[10];

如果两个数组的元素个数相同类型也相同,这两个数组的类型就相同。

存储在数组中的每个数据项都用相同的名称访问,在这个例子中,该名称就是numbers。 要选择某个元素,可以在数组名称后的方括号内使用索引值。索引值就是从0开始的连续整数。
0是第一个元素的索引值,依次类推到9表示数组中的10个元素。

注意:如果在程序中使用的索引值超过了这个数组的合法范围,程序将不能正常运行,一定要认真检查,避免这种情况。


数组和地址

下面声明了一个包含四个元素的数组:
long number [4];

声明一个数组时,要给编译器提供为数组分配内存所需要的所有信息,包括值的类型和数组维。
数组占用的字节数就是元素个数乘以每个元素类型所需的字节数。
数组元素的地址是数组开始的地址。

#include<stdio.h>
int main(void)
{
   double values[5] = {1.5,2.5,3.5,4.5,5.5};
   printf("The size of the array is %zu bytes.\n",sizeof values);
   return 0;
}

输出结果是40.


多维数组

二维数组可以声明如下:
float carrots[25][30];

三维数组是二维数组的扩展
double beans[4] [10][20];
这个语句声明的数组有800 个元素,可以把它看作存储豆类植物的产量,
豆类植物有四块田,每块田包含10行20列植物。根据需要,可以定义任意多维数组。


字符串数组

可以使用char 类型的二维数组存储字符串,数组的每一行都用来存储一个字符串。这样,就可以存储一整串字符串,通过一个变量名来引用它们,例如:
char sayings[3][32] = { "manners maketh man.","Many hands make light work.","Too many cooks spoil the broth ."};


数组和指针
#include<stdio.h>
#include<string.h>

int main(void)
{
   char multiple[]="a string";
   char *p=multiple;
   int i=0;
   for(i=0;multiple[i]!='\0';i++)
   printf("multiple[%d]=%c *(p+%d)=%c \n",i,multiple[i],i,*(p+i));
   return 0;
}

结果如下:
在这里插入图片描述
二维数组也是类似的表达形式。

要注意的是,数组名称是一个固定的地址,而不是一个指针,可以在表达式中使用数组名及其引用的地址,但不能修改它。


总之,数组在C语言中是个不可或缺的组成部分,会用数组很有必要。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值