c语言 c7.ppt


文档分类:IT计算机 | 页数:约57页 举报非法文档有奖
1/57
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/57
文档列表 文档介绍
第七章数组
对大批量相同类型的数据如何高效的处理?
6/26/2018
1
 Focus:数组的定义和使用
1. 一维数组的定义和使用
2. 二维数组的定义和使用
3. 字符数组以及相关函数
数组:是有序的、同类型数据的集合. 数组中的每一个元素都属于同一数据类型。用统一的数组名和下标来唯一地确定数组中的元素。如,一个班有30个学生,可用s1,s2,..,s30来存放30个学生的某门课成绩。显然缺点有:(1)相当于定义了30个基本变量,且它们在内存中的存放位置不一定连续;(2)不便于用循环方式处理;(3)其上下标不好表示。为此,C提供了用
数组名+方括号
的表示形式,即s[30],其中的元素:s[0],s[1],s[2],…,s[29]
6/26/2018
2
一、一维数组的定义
定义格式:类型说明符数组名[常量表达式];
ex: int a[10];
说明:
1、类型说明符用于说明数组中存放的数据的数据类型。
2、数组名命名规则和变量名相同,遵循标识符命名规则。
3、存储(内存映象): 按序连续存放。
4、常量表达式的值为数组的长度,即表示数组中的元素个数,
必须为整数。常量表达式可为整型常量或符号常量。且数
组元素的下标从0开始
a[0]
a[1]
a[2]
:
:
a[9]
第一节一维数组的定义和引用
6/26/2018
3
6、常量表达式是用方括号[ ],而不能用圆括号( )
7、可同时说明多个数据类型相同的数组,以逗号为分
隔符. ex: int a[10],b[20];
8、地址与元素的关系:
数组名a代表数组元素的首地址,a+i为a[i]元素的地址,但不
能用a++运算改变a本身的值;第i个元素表示:*(a+i)=a[i];
如,输入 for(i=0;i<10;i++) scanf(“%d”,a+i) ;
输出 for(i=0;i<10;i++) printf(“%d”,*(a+i)) ;
main( )
{ int n;
scanf(“%d”,&n);
int s[n], g[n*10];
……}
不能动态定义;
5、不允许对数组的大小作动态定义。
6/26/2018
4
二、一维数组元素的引用
C语言中规定只能逐个引用数组元素而不能一次引用整个数组
引用格式:数组名[下标]
可以是整型变量,
整型表达式
main( )
{ int a[10]={1,2,3,4,5,6,7,8,9,10}, b[10];
for(k=0;k<10;k++) b[k]=a[k];
for(k=0;k<10;k++) printf(“%d”, b[k]);
}
若:b=a ; 错!
若: printf(“%d”, b); 错!
6/26/2018
5
1、数组的引用只能逐个下标引用
2、数组元素是变量,数组名不是变量,而是数组
的首地址;
3、下标最小值是0,最大值为:数组长度-1,
C编译不作越界检查
int a[3]; 包括 a[0] a[1] a[2]
int a[25], b[10][20];
/* a 、b 数组的第一个元素分别是 a[0], b[0][0] */
/* a 、b 数组的最后一个元素分别是 a[24], b[9][19]*/
说明:
6/26/2018
6
1、数组元素
赋值方法
说明:
1)在程序运行阶段,没有赋值的数组元素,其值不确定
2)在编译阶段,没有赋值的数组元素,系统会给一定值0或‘\0’
3)数组必须先定义,后使用
三、数组的初始化
int a[3];
a[0]=1;a[1]=2;
1)赋值语句给数组元素赋值
2)用输入函数从键盘或从数据文件中读
取数据并存放在数组元素中
3)定义数组的同时,为数组元素赋值
int a[10],i;
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
int a[3]={1,2,0};
6/26/2018
7
2、数组初始化的方法
1) 定义数组时,对数组所有元素赋值
int a[3]={1,2,3};
2)定义数组时,对部分元素赋值
int a[3]={0,1}; /* a[0]=0,a[1]=1,a[2]=0;*/
3)在对全部元素赋初值时,可不指定数组长度
int a[ ]={1,2,3,4,5};  int a[5]={1,2,3,4,5};
6/26/2018
8
四、一维数组的应用(排序)
例1:用冒泡法对任意给定的一组数组按从小到大排列。基本思路:采用若干次轮回,在每一轮回中,对指定的数据两两比较。
若是从小到大排序(升序),则把大数放到指定

c语言 c7 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数57
  • 收藏数0 收藏
  • 顶次数0
  • 上传人iris028
  • 文件大小1.54 MB
  • 时间2018-06-26