二级c语言视频数组,计算机二级C语言 数组.doc

第九章 数组

引言:

C语言中简单数据类型:

int float double char int * int**

构造数据类型:数组

数组定义:把类型相同的若干个变量组合到一块,它们有一个的组名,具体表示每一个变量是用组名和该变量在组中排的位置组成。

程序中代码表示:int a[5];

a[0]a[1]…..a[4]

存储图:

a[0] a[1] a[2] a[3] a[4]

1111 1115 1119 1123 1127

1.一维数组的定义和一维数组元素的引用

(1)一维数组的定义

形式:类型名 数组名[整型常量表达式]

类型名:数组元素的类型

数组名: 合法的表示法

整型常量表达式:确定组的大小

int a,i=3;

int a[3]; int a[2+1];

flaot a[3];

double a[3];

char a[3];

int *a,*b,*c;

int *a[3];

int a[i]; 非法

int a[3.0];非法

(2)一维数组的引用

下标:确定每一个具体元素在组中的位置。下标从0开始且不可越界,下标的类型(整型常量、整型常量表达式、已经定义且赋值的整型变量)

形式:组名[下标];

举例:

int a[3],i=1,j=0;

a[0] a[1] a[2]

a[1+1]

a[i] a[i+j]

a[3] 非法

a[-1] 非法

a[1.5] 非法

总结:

int a[3],i=1;

数组名:a

元素及其元素的个数:3 a[0] a[1] a[2]

下标的下界和上界 0 1 2

存储图:

一维数组名:

一个数组元素实质就是一个变量,代表内存中的一个存储单元。一个数组代表了内存中一串连续的存储单元。

C语言中一维数组名中存放的是一串连续存储单元的首地址,它是一个地址常量。一维数组名可理解为一个指针,它的基类型为数组类型。不可以对它重新赋值,也不可以用数组名a代表a[0].a[1]…这些数组元素。 理解为指针

a[0] a[1] a[2] a[3] a[4]

1111 1115 1119 1123 1127

int a[5],k,*p=&k;

a[0] a[1] a[2]…a[4]

1115 …

10 20 30……

a:数组名,理解为指针

值:1111 &a[0] a 常量

a=p; a++; 非法

p=a;

基类型: int

(3)一维数组的初始化(赋值)

int a=1;

int a[3]={1,2}; 0

char a[3]={‘0’,’1’ }; ‘\0’

int a[]={0 ,0,0}; 3

(4)一维数组编程

例:求所有元素的平均值

#include "stdio.h"

main()

{int a[6]={72,98,87,64,57,77};

int sum=0,i;doble ave;

for(i=0;i<6;i++)

sum=sum+a[i]/6;

printf(“%lf”,sum);

}

2.一维数组和指针

a[0] a[1] a[2] a[3] a[4]

1111 1115 1119 1123 1127

(1)一维数组和数组元素的地址

数组名代表了一串连续存储单元的首地址(数组中第0个元素的地址)这个地址值是固定的,即数组名为一个地址常量不可以对它重新赋值。

a可理解为指针,它的基类型为数组的类型。

&a[0] 1111

一串连续存储单元的首地址 1111

a里边的内容 1111

a的基类型 int

int a[3],x=10,*p=&k,k;

a=&x; 非法

a++; 非法

a=p; 非法

p=a; p=&a[0]

语句举例:

int a[3],*p,i;

1)数组名a 的形式:

使p依次指向数组中的每一个元素

p=&a[0] a a+0 1111

p=&a[1] a+1 1111+1*4 1115

p=&a[2] a+2 1111+2*4 1119

for(i=0;i<3;i++)

p=a+i;

从键盘输入数据依次存放到a数组中

for( i=0;i<3;i++)

scanf(“%d”,&a[i]);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值