首页 > IT职业 > IT职场 > 物联网学习教程——一维数组的引用
对数组元素初始化的实现方法
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};
或inta [ 10 ] ={0};
不能写成:int a [ 10 ] ={0*10};
4. 在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。
例如:int a [ 5 ] ={1 , 2 , 3 , 4 , 5};
也可以写成 int a [] ={1 , 2 , 3 , 4 , 5};
int a [ 10 ] ={1 , 2 , 3 , 4 , 5}; 只初始化前 5 个元素,后 5 个元素为 0 。
例1 :用数组来处理 , 求解 Fibonacci 数列。
Fibonacci 数列公式:已知 : a1=a2=1 an=an-1+an-2
即:1,1,2,3,5,8,13
程序实例:for(i=2;i<20;i++)
f [ i ] =f [ i-2 ] +f [ i-1 ] ;
for(i=0;i<20;i++)
{
if(i%5==0) printf( ″\ n ″ );
printf( ″ %12d ″, f [ i ] )
} /*For 循环结束 */
} /* 程序结束 */ (if 语句用来控制换行,每行输出 5 个数据。)

程序举例2 :

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

如果有n 个数,则要进行 n-1 趟比较。在第 1 趟比较中要进行 n-1 次两两比较,在第 j 趟比较中要进行 n-j 次两两比较。

程序实例3 :
for(j=0;j<9;j++)
for(i=0;i<9-j;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 ] );
printf( ″ \n ″ );
}/* 程序结束 */

最后:
关注回复“物联网”即可获取物联网全套视频教程
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69914734/viewspace-2656020/ ,如需转载,请注明出处,否则将追究法律责任。