C语言教程:数组

2018-10-0708:01:30编程语言入门到精通Comments3,509 views字数 1373阅读模式

C语言中的数组是一组或多个元素(数据)。C语言数组的所有元素是均匀的(相似)或是相同类型。它具有连续的内存位置。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

如果必须存储类似的元素,在C语言中使用数组是非常用好处的。假设你必须存储50名学生的记录,一种方法是分配50个变量,这么变量这是难以管理的。 例如,我们不能仅使用几行代码来表示或访问这些变量的值。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

另一种方法是使用数组。通过使用数组,我们可以轻松访问这些元素。只需要几行代码来访问数组的元素。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

数组的优点

  1. 代码优化:访问数据可使用较少的代码。
  2. 易于遍历数据:通过使用for循环,可以轻松地检索数组的元素。
  3. 易于排序数据:要排序数组的元素,只需要几行代码。
  4. 随机访问:可以使用数组随机访问任何元素。

数组的缺点

  1. 固定大小:无论什么大小,在声明数组时都要先规定大小,而且元素个数不能超过事先定义的大小。数组它不能动态地增长大小,我们稍后会学习。

数组声明

我们可以用以下方式在C语言中声明一个数组。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

data_type array_name[array_size];
C

现在,下面来看看一下声明数组的例子。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

int marks[5];
C

这里,intdata_type也就是数组存储数据的类型,marksarray_name,用来表示数组的名称,5array_size表示最多只能存储5元素,即:5int类型的数据。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

数组初始化

通过索引初始化数组的一种简单方法。请注意,数组索引从0开始,以[SIZE - 1]结尾。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

int marks[5];  

marks[0]=80;// 初始化数组的每个元素的值
marks[1]=60;  
marks[2]=70;  
marks[3]=85;  
marks[4]=75;
C

每个元素初始化后,如下图所示-文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

C语言教程:数组文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

数组示例

为了演示如何使用数组,我们创建一个名称为:array-example.c的源文件,其代码如下所示 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

#include <stdio.h>    

void main() {
    int i = 0;
    int marks[5];//declaration of array  

    marks[0] = 80;//initialization of array  
    marks[1] = 60;
    marks[2] = 70;
    marks[3] = 85;
    marks[4] = 75;

    // 遍历数组
    for (i = 0;i<5;i++) {
        printf("%d \n", marks[i]);
    }//end of for loop  

}
C

执行上面代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

80
60
70
85
75
Shell

数组声明和初始化

我们可以在声明时初始化数组,来看看下面的代码 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

int marks[5]={20,30,40,50,60};
C

在这种情况下,不需要定义大小。所以也可以写成如下代码 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

int marks[]={20,30,40,50,60};
C

让我们来看看完整的程序,在C中声明和初始化数组。创建一个名称为:array-declare-and-initialize.c的源文件,其代码如下所示 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

#include <stdio.h>    

void main() {
    int i = 0;
    int marks[5] = { 20,30,40,50,60 };//declaration and initialization of array  

    //traversal of array  
    for (i = 0;i<5;i++) {
        printf("%d \n", marks[i]);
    }

}
C

执行上面代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html

20
30
40
50
60
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/6427.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ymba/6427.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定