1 / 27
文档名称:

第六章 数组.ppt

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

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

分享

预览

第六章 数组.ppt

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

下载得到文件列表

第六章 数组.ppt

文档介绍

文档介绍:C程序设计
南京师范大学
地图学与地理信息系统04级
专业选修课
主讲教师: 汪闽
第六章数组
一维数组
二维数组及多维数组
字符数组和字符串
数组概念
数组概念
构造数据类型之一
数组:有序数据的集合,用数组名标识
元素:属同一数据类型,用数组名和下标确定
一维数组的定义
定义方式: 数据类型数组名[常量表达式];
合法标识符
表示元素个数
下标从0开始
[ ] :数组运算符
单目运算符
优先级(1)
左结合
不能用( )
例 int a[6];
a[0]
0
1
4
5
a[1]
a[2]
a[3]
a[4]
a[5]
2
3
a
编译时分配连续内存
内存字节数=数组维数*
sizeof(元素数据类型)
数组名表示内存首地址,
是地址常量
一维数组
数组必须先定义,后使用
只能逐个引用数组元素,不能一次引用整个数组
数组元素表示形式: 数组名[下标]
其中:下标可以是常量或整型表达式
例 int i=15;
int data[i]; (不能用变量定义数组维数)
例 int a[10];
printf(“%d”,a); ()
必须 for(j=0;j<10;j++)
printf(“%d\t”,a[j]); ()
例 int data[5];
data[5]=10; //C语言对数组不作越界检查,使用时要注意

初始化方式
在定义数组时,为数组元素赋初值
(在编译阶段使之得到初值)
int a[5]={1,2,3,4,5};
等价于:a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5;
说明:
数组不初始化,其元素值为随机数
对static数组元素不赋初值,系统会自动赋以0值
当全部数组元素赋初值时,可不指定数组长度
如 int a[5]={6,2,3};
等价于: a[0]=6; a[1]=2;a[2]=3; a[3]=0; a[4]=0;
如 int a[3]={6,2,3,5,1}; ()
static int a[5];
等价于:a[0]=0; a[1]=0; a[2]=0; a[3]=0; a[4]=0;
只给部分数组元素赋初值
int a[]={1,2,3,4,5,6};
编译系统根据初值个数确定数组维数

排序过程:
(1)比较第一个数与第二个数,若为逆序a[0]>a[1],则交换;然
后比较第二个数与第三个数;依次类推,直至第n-1个数和第
n个数比较为止——第一趟冒泡排序,结果最大的数被安置在
最后一个元素位置上
(2)对前n-1个数进行第二趟冒泡排序,结果使次大的数被安置在
第n-1个元素位置
(3)重复上述过程,共经过n-1趟冒泡排序后,排序结束
例用冒泡法对10个数排序

38 49 65 76 13 27 30 97
第一趟
38 49 65 13 27 30 76
第二趟
38 49 13 27 30 65
第三趟
38 13 27 30 49
第四趟
13 27 30 38
第五趟
13 27 30
第六趟
49 38 65 97 76 13 27 30
初始关键字
n=8
38
49
76
97
13
97
97
27
30
97
13
76
76
76
30
13
65
27
65
30
65
13
13
49
49
30
49
27
38
27
38
30
38
13 27
第七趟
例用冒泡法对10个数排序(图解) 程序见 P125
排序过程:
(1)首先通过n-1次比较,从n个数中找出最小的, 将它与第一个数
交换—第一趟选择排序,结果最小的数被安置在第一个元素位置上
(2)再通过n-2次比较,从剩余的n-1个数中找出关键字次小的记录,
将它与第二个数交换—第二趟选择排序
(3)重复上述过程,共经过n-1趟排序后,排序结束
例用简单选择法对10个数排序

初始: [ 49 38 65 97 76 13 27 ]
k
j
i=1
13
49
一趟: 13 [38 65 97 76 49 27 ]
i=2
27
38
二趟: 13 27 [65 97 76 49 38 ]
三趟: 13 27 38 [97 76 49 65 ]
四趟: 13 27 38 49 [76 97 65 ]
五趟: 13 27 38 49 65 [97 76 ]
六趟: 13 27 38 49 65 76 [97 ]
k

最近更新

2026年安徽省蚌埠市单招职业倾向性考试题库及.. 41页

2025年甘肃省陇南地区单招职业倾向性测试模拟.. 40页

2025年白城医学高等专科学校单招职业技能测试.. 40页

2025年益阳职业技术学院单招职业技能测试模拟.. 40页

2025年眉山药科职业学院单招职业倾向性测试题.. 38页

2026年山东建筑单招试题附答案 42页

2026年山东海事职业学院单招综合素质考试模拟.. 40页

2026年山东经贸职业学院单招职业倾向性测试题.. 42页

2025年福州英华职业学院单招职业倾向性测试模.. 40页

2025年福建师范大学协和学院单招综合素质考试.. 41页

2025年福建艺术职业学院单招职业适应性测试模.. 40页

2025年绍兴文理学院元培学院单招职业倾向性测.. 39页

2026年广东单招考试题必考题 41页

2025年苏州市职业大学单招职业技能测试题库及.. 41页

2025年茂名职业技术学院单招综合素质考试题库.. 40页

2025年莱芜职业技术学院单招职业技能考试模拟.. 38页

2026年广西信息职业技术学院单招职业倾向性测.. 43页

2025年襄阳职业技术学院单招职业技能测试模拟.. 41页

2025年西宁城市职业技术学院单招职业适应性测.. 39页

2025年西安培华学院单招职业倾向性测试题库必.. 40页

2026年康复单招试题及答案1套 42页

2026年往年广西单招试题必考题 42页

2025年西藏林芝地区单招职业倾向性测试模拟测.. 41页

2026年抚顺职业技术学院单招职业技能测试模拟.. 42页

2026年新疆昌吉回族自治州单招职业适应性测试.. 41页

2025年重庆市《保安员证》考试题库含答案 39页

预防滑倒、绊倒及跌落专题培训课件 45页

混凝土工程培训课件优秀PPT 26页

小学数学六年级下册《鸽巢问题》作业设计 9页

住院患者自带药品使用管理规定通知 3页