文档介绍:大学C++程序设计教程
西安交通大学
计算机教学实验中心.
第4章数组和结构体
本章目标
掌握数组定义的规则。
掌握数组的初始化方法及数组元素的引用。
掌握有关数组的基本算法。
掌握字符串处理函数的应用。
掌握结构体定义和使用的规则
学会使用VC++:单步执行、设置断点、观察变量值。
1
授课内容
数组
字符型数组和字符串处理库函数
结构体类型
数组和结构体
构体嵌套
程序设计举例
调试技术
2
、数组
迄今为止,我们使用的都是属于基本类型(整型、字符型、实型)的数据,c语言还提供了构造类型的数据,它们有:数组类型、结构体类型、共用体类型。
构造类型数据是由基本类型数据按一定规则组成的,因此有的书称它们为“导出类型”。
3
问题的引出:
实际应用的程序设计中,只用几个变量的情况是极少的;更多的情况是处理大批量的相同类型或不同类型的数据。
相同类型数据举例:统计交大15,000学生英语4级统考成绩;
不同类型数据举例:管理交大15,000学生学籍信息记录,包括:姓名、学号、出生日期、班级、各科成绩等。
用什么样的数据结构来描述这类应用更简洁?
4
一维数组
常用于处理大批量数据;
数据特点:存在内在联系;
数组——具有相同数据类型的变量集合;
这些变量都有相同名字,但下标不同;
称这些变量为数组元素;
只有一个下标——一维数组;
有两个下标——二维数组
例如: int array[10];
5
一维数组定义
数组是具有一定顺序关系的若干变量的集合体,组成数据的变量称为该数组的元素变量,简称元素。
一维数组的定义方式为:
类型说明符数组名[常量表达式]
例如: int a[10];
它表示数组名为a,有10个元素。
6
说明
(1) 数组名定名规则和变量名相同,遵循标识符定名规则。
(2) 数组名后是用方括弧括起来的常量表达式,不能用圆括弧,下面用法不对:int a(10);
(3)方括弧中的下标表示元素在数组中的位置。C语言的下标从0,必须是整型变量或常量。
(4)编译系统处理数组说明语句时,为它在内存中分配一定的存储空间,数组在内存中存储时,按下标递增的顺序连续存储各元素的值。
7
一维数组的初始化
(1) 在定义数组时对数组元素赋以初值。
例如:int a[10]={0,1,2,3,4,5,6,7,8,9};
(2) 可以只给一部分元素赋值。例如:
int a[10]={0,1,2,3,4};
定义a数组有10个元素,但花括弧内只提供5个初值,这表示只给前面5个元素赋初值,后5个元素值为0。
8
(3) 如果想使一个数组中全部元素值为0,可以写成
int a[10]={0,0,0,0,0,0,0,0,0,0};
不能写成 int a[10]={0*10};
9