null数组数组什么是数组什么是数组数组是含有多个数据值的数据结构。
每个数据值具有相同类型。
这些数据值称为元素。aa[0]a[1]a[2]a[3]a[4]a[5]切记!切记!数组下标从0开始。
元素类型要一致。
当下标超过数组范围时,程序可能出错数组初始化数组初始化int a[4]={1,2,3,4};
int a[4]={1,2};
int a[4]={0};
int a[]={1,2,3,4,5};
遍历数组遍历数组#include
int main()
{
int i,a[5]={1,2,3,4,5};
for (i=0;i<5;i++)
a[i]=a[i]*2;
for (i=0;i<5;i++)
printf("%d ",a[i]);
return 0;
}一维数组和指针一维数组和指针数组名可以认为是一个指针变量名。
它指向数组第一个元素
它与一般指针的区别是,它是常量,不能修改尽管不能修改数组名所代表的指针,但可以用它运算来指向其它元素尽管不能修改数组名所代表的指针,但可以用它运算来指向其它元素int i,a[5];
for (i=0;i<5;i++)
scanf("%d",a+i);
for (i=0;i<5;i++)
printf("%d ",*(a+i));当p指向a数组首地址时当p指向a数组首地址时表示数组元素a[i]的方法有:
a[i]
*(a+i)
p[i]
*(p+i)练习练习编写函数,分别求一个整型数组的总和和平均值。
将数组中的元素倒序排列null#include
int sum(int *a,int n)
{
int i,s=0;
for(i=0;i
void main()
{
int a[2][3]={{0,1,2},{3,4,5}};
int i,j;
for (i=0;i<2;i++)
{
for (j=0;j<3;j++)
printf("a[%d][%d]=%d ",i,j,a[i][j]);
printf("\n");
}
}二维数组与指针二维数组与指针int a[2][3]={{1,2,3},{4,5,6}};a123456a[0]a[1]对a[i][j]的引用可以是:对a[i][j]的引用可以是:a[i][j]
*(*(a+i)+j)
*(a[i]+j)
(*(a+i))[j]练习练习找出数组中最大的一个数
在数组中查找某个数
将数组排序输出
求两个3x3矩阵的和
将字符串倒序输出