1 / 21
文档名称:

第六章 数组.ppt

格式:ppt   页数:21
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第六章 数组.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

第六章 数组.ppt

文档介绍

文档介绍:第 6 章数组
一维数组的定义
一维数组元素的引用
一维数组的初始化
二维数组的定义
二维数组的引用
二维数组的初始化
字符数组
第 6 章数组
一维数组的定义
语句形式:
类型说明符数组名[常量表达式]
说明:
数组名定名规则和变量名相同。
常量表达式表示数组元素的个数,即数组的长度。
如:
int a[10];
表示a数组有10个元素:a[0],a[1],a[2],, a[9],没
有a[10]。
注意:数组的下标是从 0 开始的。
 C不允许对数组进行动态定义。以下作法是错误的。
int n;
scanf(“%d”,&n);
int a[n];
一维数组元素的引用
数组必须先定义,然后再使用。C的数组元素只能
逐个引用而不能一次引用整个数组。
一维数组元素的表示形式为:
数组名[下标]
下标可以是整型常量或整型表达式。

main( )
{ int i,a[10];
for (i=0; i<=9; i++)
a[i]=i+1;
for (i=9; i>=0; i--)
printf(“%2d”,a[ i]);
}
输出结果:
10 9 8 7 6 5 4 3 2 1
一维数组的初始化
赋值语句和输入语句均可使数组中的元素赋初值,但占用运
行时间。简捷的方法是在程序运行之前使数组初始化。
对数组元素初始化的方法有:
1. 在定义数组时对数组元素赋以初值
如:
static int a[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
说明:
依次赋予数组元素的初值必须用{ } 括起来。
“static”是C的一个关键字,意为“静态存储”。C规定只有
静态存储(static)数组和外部存储(extern)数组才能初始化。
2. 可以只给一部分元素赋值
如:
static int a[10] = { 0, 1, 2, 3, 4 };
3. 在C中系统会自动对所定义的静态数组的每个元素赋初值0
4. 对全部数组元素赋初值时,可以不指定数组长度
如:
static int a[5] = { 1, 2, 3, 4, 5 };
可以写成:
static int a[ ] = { 1, 2, 3, 4, 5 };
main( )
{ int i, k, r, x, b[16];
printf(“Enter an integer x :”); scanf(“%d”,&x);
printf(“%6d binary number is :\n”,x);
k = -1;
do
{ r = x%2; b[++k]= r ; x/=2; }
while (x != 0);
for ( i=k; i>=0; i--)
printf(“%1d”,b[i]);
printf(“\n”);
}
将一个十进制整数转换成二进制数。
用冒泡法将 10 个数按从小到大排序。
冒泡法的思路是:将相邻两个数进行比较,将小的调到前头。
若有这样一组数:9 8 4 5 2 0,则按如下图所示进行操作。
9 8 4 5 2 0
比较
交换
9
8
比较
交换
9
4
比较与交换的操作直到数字 9 调到最后的位置,然后将剩下
的 5个数 8 4 5 2 0 进行下一轮比较与交换,直至排好序为止。
当有n个数时需要作n–1
趟这样的搜索, 每趟搜索
要作n–1次比较。
main( )
{ int i, j,t,a[11];
printf(“input 10 numbers :\n”);
for (i=1; i<11; i++) scanf(“%d”,&a[i]);
printf(“\n”);
for ( j=1; j<=9; j++)
for ( i=1; i<=10-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=1; i<11; i++) printf(“%d”,a[i]);
}
二维数组的定义
定义形式:
类型说明符数组名[常量表达式1] [常量表达式2]
如: float a[3][4];
定义a是一个3x4 (3行4列)的数组,即a数组有12个元素。
但不得写成:float a[3,4];
注意:
 C允许定义多维数组。
二维数组中元素的排列顺序为按行按列。即存放完第

最近更新

2024年安徽机电职业技术学院单招职业倾向性考.. 40页

2024年安徽省芜湖市单招职业适应性测试模拟测.. 39页

2026年以父母为主题的演讲稿 9页

2026年以我的爸爸为题的五年级作文 7页

2026年以家庭趣事为话题的初三作文800字 6页

2026年以人生如下棋为题的作文 5页

2026年付姓男宝宝名字独一无二 3页

谷物加工产业数字化转型路径 35页

高效微生物菌株的筛选与应用 27页

2024年安徽绿海商务职业学院单招职业技能测试.. 40页

2024年安徽马钢技师学院单招职业技能测试模拟.. 40页

2024年定西师范高等专科学校单招职业倾向性测.. 40页

2024年宝鸡中北职业学院单招职业倾向性测试题.. 39页

2024年山东力明科技职业学院单招职业技能考试.. 41页

2024年山东城市建设职业学院单招职业技能考试.. 41页

2024年山东文化产业职业学院单招职业倾向性考.. 39页

2024年山东省青岛市单招职业适应性测试题库新.. 40页

2024年山东英才学院单招职业适应性测试模拟测.. 40页

2024年山西华澳商贸职业学院单招职业技能测试.. 41页

2024年山西林业职业技术学院单招职业倾向性测.. 40页

2024年山西省晋中市单招职业倾向性测试题库及.. 40页

2024年山西经贸职业学院单招职业倾向性测试题.. 40页

2024年岳阳现代服务职业学院单招职业技能考试.. 39页

2024年巴中职业技术学院单招职业技能考试模拟.. 41页

2024年常州纺织服装职业技术学院单招职业倾向.. 40页

2024年平顶山文化艺术职业学院单招职业适应性.. 39页

2024年广东工程职业技术学院单招职业技能考试.. 41页

2024年广东江门中医药职业学院单招职业倾向性.. 40页

2024年广东省外语艺术职业学院单招综合素质考.. 40页

2024年广东省深圳市单招职业倾向性考试模拟测.. 39页