1 / 96
文档名称:

《高级语言程序设计教学课件》第6章数组.ppt

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

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

文档介绍:*
提出问题:
【例6-1】从键盘输入10个数,求平均值并输出所有大于平均值的数。
采用以前的方法解决,存在以下问题:
循环体中只用一个变量完成。计算出平均值后,因没有保存这10个数,无法完成比较。
用十个变量完成。无法完成循环输入 /*每行输出5个数*/
printf(“\n”);
}
}
printf(“\n");
}
第13页,共96页。
*

3、一维数组的初始化
初始化方式: 定义时赋初值
说明:
数组不初始化,其元素值为随机数
部分数组元素赋初值,没有赋初值的元素为0
当全部数组元素赋初值时,可不指定数组长度
例 int a[5]={6,2,3};
a[0]=6; a[1]=2;a[2]=3; a[3]=0; a[4]=0;
例 int a[]={1,2,3,4,5,6};
编译系统根据初值个数确定数组元素个数
例 int a[5]={1,2,3,4,5};
a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5;
第14页,共96页。
*
4、一维数组的应用举例
【例6-3】 从键盘输入10个互不相同的整数并存放在一维数组中,找出值最大的数组元素,并输出最大值所在的元素下标
0
1
2
3
4
5
6
7
8
9
8
-9
30
43
87
98
23
79
62
28
k
k
k
k
k
k=0;
for(i=1; i<10; i++)
{
if ( a[k]<a[i] )
{
k = i;
}
}
第15页,共96页。
*
#include <stdio.h>
main()
{
int i, k ;
int a[10]={0};

printf(“Please input data:\n”);
for(i=0; i<10; i++)
{
scanf(“%d”, &a[i]);
}

第16页,共96页。
*

k=0;
for(i=1; i<10; i++)
{
if ( a[k]<a[i] )
{
k = i;
}
}
printf(“max=%d, ”, a[k]);
printf(“k=%d\n", k);
}
第17页,共96页。
*
【例6-4】 利用数组计算Fibonacci数列的前20个数

f[19]

19



f[5]

5
f[4]

4
f[3]

3
f[2]

2
f[1]
1
1
f[0]
1
0
2


3


5


8



这是一个古典数学问题,有一对兔子,从出生后的第三个月开始,每个月都生一对小兔子。小兔子长到第三个月后每个月又生一对兔子。假设所有兔子都不死,问每个月的兔子总数为多少?

第18页,共96页。
*

main()
{
int i;
int f[20]={1, 1};

for(i=2; i<20; i++)
f[i]=f[i-2]+f[i-1];
for(i=0; i<20; i++)
{
printf("%8d", f[i]);
if(i%5==0) printf("\n");
}
}
1 1 2 3 5
8 13 21 34 55
89 144 233 377 610
987 1597 2584 4181 6765
f[0] f[1] f[2] f[3] f[4]
f[5] f[6] f[7] f[8] f[9]
f[10] f[11] f[12] f[13] f[14]
f[15] f[16] f[17] f[18] f[19]
第19页,共96页。
*
【例6-5】 从键盘上输入一个数x,在给定的数组a中查找x。如果找到了,输出相应的下标,否则,输出“Not Found”。
*
0
1
2
3
4
5
6
7
8
9
22
19

分享好友

预览全文

《高级语言程序设计教学课件》第6章数组.ppt

上传人:xiang1982071 8/4/2022 文件大小:2.72 MB

下载得到文件列表

《高级语言程序设计教学课件》第6章数组.ppt

相关文档