c语⾔⽤⼀维数组存储数据,C语⾔⼀维数组⼊门教程
本⽂章来简单的介绍⼊门级的c语⾔⼊门教程,下⾯我来介绍C语⾔⼀维数组的使⽤⽅法,包括有⼀维数组,数组的引,数组的遍历⽤,数组的初始化等。
⼀、⼀维数组
1、定义⼀个⼀维数组:
(1)格式:存储类别 类型标识符 数组名标识符[常量表达式]
(2)例⼦:static int a[10]
(3)注意:定义数组时数组的元素必须是常量,不能是变量,例如int n=3;int a[n] 这是不对的。
2、对数组的引⽤:
(1)引⽤形式:数组名[下标] 例如 a[2]
( 2) 注意数组的下标是由0开始,如a[3] 表⽰有三个元素 分别是a[0],a[1] ,a[2] .如果你⽤a[3]访问第三个元素是错误的。
(3)对数组的遍历:如果要⼀次访问数组的全部元素,则只能使⽤遍历的形式,如下
代码如下复制代码
for(int i=0;i<5;i ){
printf(“d%n”,a[i]);
}
(4)怎么输⼊数组? 注意不能整体⼀下⼦输⼊数组,如果你想scanf(“%d,”,a);其中a是数组,这样只能够输⼊a[0],因为数组名代表的就是数组的⾸地址,它与scanf(“%d,”,&a[0]);等价。如果想全部输⼊,则需要使⽤循环的⽅式:
例如:
代码如下复制代码
for(int i=0;i<5;i ){
scanf(“d%n”,&a[i]);
}
3、数组的存储结构:(1)有⼀个整型数组a,⾥⾯有4个元素,知道了第⼀个元素的内存地址是1000,怎么求出第三个元素的内存地址
解:c语⾔为数组开辟了连续的存储单元,每个元素都会占据⼀样的字节数,由于整型⼀般是占据2个字节,所以每个元素都会占据2个字节的内存空间,数组的其实地址是1000,所以第⼆个元素的地址是1002,第三个是1004,第四个是1006.
根据这个原理,可以得出⼀个公式:
数组的元素地址 = 数组的起始地址 元素下标 x sizeof(数组类型)
数组的初始化:
解:初始化的⽅式有:int a[5] = {0,1} 或者 nt a[5] = {0,1,5,4,3}
注意:如果元素的长度不够,系统会⾃动为后⾯的元素补0,就像第⼀个a[5] = {0,1},就相当于a[5] = {0,1,0,0,0}。千万不要多了,这样会导致溢出,例如a[5] = {0,1,5,4,3,0,5}就是错误的⾏为。
例如:
代码如下复制代码
int a[10]; 说明整型数组a,有10个元素。
float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]; 说明字符数组ch,有20个元素。
利⽤数据进⾏排序(起泡排序)
从第⼀个数开始依次对相邻两数进⾏⽐较,如次序对则不做任何操作;如次序不对则使这两个数交换位置。第⼀遍的(N-1)次⽐较后,最⼤的数已放在最后,第⼆遍只需考虑(N-1)个数,以此类推直到第(N-1)遍⽐较后就可以完成排序。
源程序如下:
代码如下复制代码
#define N 10
#include"stdio.h"
main()
{
int a[N],i,j,temp;
printf("please input %d numbersn",N); for(i=0;i
scanf("%d",&a[i]);
for(i=0;i
for(j=0;j
{
scanf输入整型数组if(a[j]>a[j 1])
{
temp=a[j];
a[j]=a[j 1];
a[j 1]=temp;
}
}
printf("the array after sort:n");
for(i=0;i
printf("]",a[i]);
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论