下载此文档

【精品】PPT课件 第四章 数组、指针.ppt


文档分类:IT计算机 | 页数:约35页 举报非法文档有奖
1/35
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/35 下载此文档
文档列表 文档介绍
第四章数组、指针
教学目标:
1 .了解一维数组、二维数组的基本概念;
2 .掌握数组类型变量的定义与引用;
3 .掌握数组元素的引用。
教学重点:
1. 一维数组、二维数组的定义与引用;
2. 字符数组的定义与引用、常用字符串处理函数及
字符处理函数。
教学难点:
数组元素的引用,动态存储分配
第四章数组、指针
数组
指针
动态存储分配
数组的分类
一维数组的定义与引用
二维数组的定义与引用
字符数组与字符串类
数组的概念
1、定义
数组是在基本数据类型基础上构造出来的一种新的数据类型。
数组是具有一定顺序关系的若干相同类型变量的集合体,组
成数组的变量称为该数组的元素。
它的本质是把相同类型的一些变量有序汇集在一起,由同一
个名字、不同的下标来区分各个元素,从而为程序设计带来
便利。
2、声明与引用 数组必须先声明,后使用。
一维数组的声明形式:
类型说明符数组名[ 常量表达式];
例如:int a[10];
表示 a 为整型数组,有10个元素:a[0]...a[9]
一维数组的使用形式(实质元素的引用)
数组名[ 下标] 下标:0->数组长度-1
说明:只能逐个引用数组元素,
而不能一次引用整个数组 例如:a[0]=a[5]+a[7]-a[2*3]
下面用法是错误的:
Int a[5],b[5];
a=b;//错误
3、存储顺序
数组元素在内存中顺次存放,它们的地址是连续的。
例如:具有10个元素的数组 a,在内存中的存放次序如下:
数组名是数组首元素的内存地址。
数组名是一个常量,不能被赋值。
a[0]
a[1]
a[2]
a[3]
a[4]
a[5]
a[6]
a[7]
a[8]
a[9]
a
4、初始化
在声明数组时对数组元素赋以初值。 例如int a[10]={0,1,2,3,4,5,6,7,8,9};
可以只给一部分元素赋初值,其它自动赋默认值。 例如:int a[5]={10,20,30};
在对全部数组元素赋初值时,可以不指定数组长度。 例如:int array[]= {10,20,30};
5、举例用冒泡法对n个数据按升序排序(由小到大)。
将n个数据两两进行比较,较大的数向后移动,经过一轮比较后,将最大的数移动到末尾。
下一轮再对剩下的n-1个数进行两两比较互换,得到次大数。如此进行多轮两两比较互换,最后得到一个由小到大的有序数组。
例如,对4个数据(9,8,7,2)的冒泡排序过程:
9 8 8 8
8 9 7 7
7 7 9 2
2 2 2 9
排序第一轮第二轮第三轮
比较次数 3 2 1
结论:对n个数排序,要进行n-1轮,第i轮中要进行n-i次比较
#include <iostream>
using namespace std;
void main()
{ const int N=10;
int i,j,t,a[N];
cout<<" Please input "<<N<< " numbers : ";
for(i=0;i<N;i++)
cin>>a[i]; //输入数组元素
cout<<" The numbers are : ";
for(i=0;i<N;i++)
cout<<a[i] <<‘\t’;
//输出排序前的数组元素
cout<<endl;
for(i=1;i<=N-1;i++) //N-1轮
for(j=0;j<N-i;j++) //N-i次比较
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;//互换
}
cout<<" The sorted numbers are : ";
for(i=0;i<N;i++)
cout<<a[i] <<‘\t’;
cout<<endl;
}

【精品】PPT课件 第四章 数组、指针 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数35
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wo1230
  • 文件大小0 KB
  • 时间2014-12-09