1 / 59
文档名称:

第8章 数组.ppt

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

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

分享

预览

第8章 数组.ppt

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

下载得到文件列表

第8章 数组.ppt

文档介绍

文档介绍:第8章数组
学习目标:
掌握一维数组、二维数组的定义、初始化和数组元素的引用方法。
掌握一维数组的存储结构,掌握二维数组的逻辑结构和存储结构。
掌握与数组有关的基本操作和基本算法。
掌握与数组有关的基本操作和基本算法
了解字符串的存储结构,掌握字符串的赋值操作,掌握字符串的输入输出。
了解字符串数组的存储结构。
掌握处理字符串的基本函数。
概述
为了解决比较复杂的问题,本章介绍C语言提供的一种最简单的构造类型──数组。
数组在程序设计中,为了处理方便,把具有相同类型的若干变量按有序的形式组织起来。这些按序排列的同类数据元素的集合称为数组。在C语言中,数组属于构造数据类型。一个数组可以分解为多个数组元素,这些数组元素可以是基本数据类型或是构造类型。因此按数组元素的类型不同,数组又可分为数值数组、字符数组、指针数组、结构数组等各种类别。
本章介绍数值数组和字符数组,其余的在以后各章陆续介绍。
一维数组
一维数组的定义
数组同变量一样,也必须先定义、后使用。
数组类型说明在C语言中使用数组必须先进行类型说明。1维数组是只有1个下标的数组,定义形式如下:
类型说明符数组名[常量表达式],……;
例如:
int a[10]; 说明整型数组a,有10个元素。
float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]; 说明字符数组ch,有20个元素。
对于数组类型说明应注意以下几点:
1. 数组的类型实际上是指数组元素的取值类型。对于同一个数组,其所有元素的数据类型都是相同的。
2. 数组名的书写规则应符合标识符的书写规定。
3. 数组名不能与其它变量名相同,例如:
void main()
{
int a;
float a[10];
……
}/*main()*/
是错误的。
4. 方括号中常量表达式表示数组元素的个数,如a[5]表示数组a有5个元素。但是其下标从0开始计算。因此5个元素分别为a[0],a[1],a[2],a[3],a[4]。
5. 不能在方括号中用变量来表示元素的个数,但是可以是符号常数或常量表达式。
例如:
#define FD 5
void main()
{
int a[3+2],b[7+FD];
……
}/*main()*/
是合法的。但是下述说明方式是错误的。
void main()
{
int n=5;
int a[n];
……
}/*main()*/
6. 允许在同一个类型说明中,说明多个数组和多个变量。
例如: int a,b,c,d,k1[10],k2[20];
7. 数组名中存放的是一个地址常量,它代表整个数组的首地址。同一数组中的所有元素,按其下标的顺序占用一段连续的存储单元。
一维数组的引用
数组元素是组成数组的基本单元。数组元素也是一种变量,其标识方法为数组名后跟一个下标。下标表示了元素在数组中的顺序号。数组元素的一般形式为:数组名[下标]其中的下标只能为整型常量或整型表达式。如为小数时,C编译将自动取整。例如,a[5],a[i+j],a[i++]都是合法的数组元素。数组元素通常也称为下标变量。必须先定义数组,才能使用下标变量。在C语言中只能逐个地使用下标变量,而不能一次引用整个数组。
[]
void main()
{
int i,a[10];
for(i=0;i<10;)
a[i++]=2*i+1;
for(i=9;i>=0;i--)
printf("%d",a[i]);
printf("\n%d %d\n",a[],a[]);
} /* main()*/
本例中用一个循环语句给a数组各元素送入奇数值,然后用第二个循环语句从大到小输出各个奇数。在第一个 for语句中,表达式3省略了。在下标变量中使用了表达式i++,用以修改循环变量。当然第二个for语句也可以这样作,C语言允许用表达式表示下标。程序中最后一个printf语句输出了两次a[5]的值,可以看出当下标不为整数时将自动取整。数组的赋值给数组赋值的方法除了用赋值语句对数组元素逐个赋值外,还可采用初始化赋值和动态赋值的方法。数组初始化赋值数组初始化赋值是指在数组说明时给数组元素赋予初值。
引用数组中的任意一个元素的形式:
数组名[下标表达式]
1.“下标表达式”可以是任何非负整型数据,取值范围是0 -(元素个数-1)。
特别强调:在运行C语言程序过程中,系统并不自动检验数组元素的下标是否越界。因此在编写程序时,保证数组下标不越界是十分重要的。
2. 一个数组元素,实质上就是1个变量,它具有和相同类型单个变量一样的属性,可以对它进行赋值和参与各种运算。
3. 在C语言中,数组作为1个整体,不

最近更新

2025年乌兰察布职业学院单招职业倾向性测试模.. 40页

2025年九江职业大学单招职业倾向性测试模拟测.. 39页

2025年云南农业职业技术学院单招职业倾向性考.. 40页

2025年云南机电职业技术学院单招职业技能测试.. 41页

2025年云南省红河哈尼族彝族自治州单招职业适.. 40页

2025年云南锡业职业技术学院单招职业技能测试.. 40页

2025年伊犁职业技术学院单招职业适应性测试题.. 41页

2025年保险职业学院单招职业技能测试模拟测试.. 40页

2025年克孜勒苏职业技术学院单招职业倾向性测.. 39页

2025年内蒙古体育职业学院单招职业适应性测试.. 41页

2025年内蒙古建筑职业技术学院单招职业倾向性.. 40页

2025年内蒙古能源职业学院单招综合素质考试题.. 40页

2025年北海康养职业学院单招职业技能测试模拟.. 39页

2025年南京城市职业学院单招综合素质考试题库.. 40页

2025年南充职业技术学院单招职业倾向性测试题.. 41页

2025年南昌工学院单招职业适应性测试模拟测试.. 40页

2025年南通职业大学单招综合素质考试模拟测试.. 40页

2025年博尔塔拉职业技术学院单招职业技能考试.. 39页

2025年厦门城市职业学院单招职业倾向性考试模.. 40页

2025年台州学院单招职业适应性测试模拟测试卷.. 41页

2025年吉安幼儿师范高等专科学校单招职业倾向.. 40页

2025年吉林铁道职业技术学院单招职业适应性考.. 39页

2025年呼伦贝尔职业技术学院单招职业技能考试.. 40页

2025年哈尔滨北方航空职业技术学院单招职业技.. 41页

2025年哈尔滨职业技术学院单招职业倾向性测试.. 40页

2025年嘉兴南湖学院单招综合素质考试题库含答.. 40页

2025年四川应用技术职业学院单招职业适应性测.. 40页

2025年四川文轩职业学院单招职业倾向性测试题.. 40页

2025年医院感染管理质量控制评价内容及考核标.. 2页

2024年常州机电职业技术学院单招职业适应性测.. 78页