首页 百科知识 •一维数组的引用与初始化

•一维数组的引用与初始化

时间:2024-09-22 百科知识 版权反馈
【摘要】:将数组元素的初值依次放在一对花括弧内。经过上面的定义和初始化之后,a[0]=0,a[1]=1,a[2]=2,a[3]=3,a[4]=4, a[5]=5,a[6]=6,a[7]=7,a[8]=8,a[9]=9。定义a数组有10个元素,但花括弧内只提供5个初值,这表示 只给前面5个元素赋初值,后5个元素值为0。

 

 

 

  数组必须先定义,然后使用。C语言规定只能逐个引用数组元素而不能一次引用整个数组。

 一维数组元素的引用格式

数组名[下标]

下标可以是整型常量、变量和表达式。

例如:int  a [ 10 ],m=3,n=2;

下标可以是整型常量、变量和表达式。

注意:

定义数组时用到的“数组名[常量表达式]”和引用数组元素时用到的“数组名[下标]”是有区别的。

 

 

 

一维数组的初始化就是在定义数组的同时对数组元素赋以初值。
对数组元素初始化的实现方法:

1、 在定义数组时对数组元素赋以初值。

例如:int a[10]={0,1,2,3,4,5,6,7,8,9};

 将数组元素的初值依次放在一对花括弧内。经过上面的定义和初始化之后,a[0]=0,a[1]=1,a[2]=2, a[3]=3,a[4]=4,        a[5]=5,a[6]=6,a[7]=7,a[8]=8,a[9]=9。

2. 可以只给一部分数组元素赋值

例如:  int a[10]={0,1,2,3,4};    

定义a数组有10个元素,但花括弧内只提供5个初值,这表示     只给前面5个元素赋初值,后5个元素值为0。

3. 如果想使一个数组中全部元素值为0,可以写成:int  a[10]={0,0,0,0,0,0,0,0,0,0};或int a[10]={0};

4. 在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。

例如:int a[5]={1,2,3,4,5};

也可以写成  int a[]={1,2,3,4,5}; 

 注意:int a[ ]; 是绝对不允许的

 

 

 

例3:用起泡法对数组中10个数进行由小到大排序对数组中6个数进行起泡法排序的思路是:

个数经过第一趟(共5次比较与交换)后,最大的数9已“沉底” 。然后进行对余下的前面5个数第二趟比较;
   

 

 

 

‍用起泡法对数组中10个数进行由小到大排序程序1:
       #include <stdio.h>
       void main()
       {int a[10];
       int i,j,t;
       printf("input 10 numbers :\n"); 
       for (i=0;i<10;i++)
       scanf("%d",&a[i]);
       printf("\n");
       for(j=1;j<10;j++)
       for(i=0;i<=10-j-1;i++)
       if (a[i]>a[i+1])
       {t=a[i];a[i]=a[i+1];a[i+1]=t;}
       printf("the sorted numbers :\n");
        for(i=0;i<10;i++)
        printf("%d ",a[i]);
         }‍

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈