内容正文:
第五章 批量数据的存储--数组
1
CONTENTS
目录
01
02
一位数组的应用
数组的认知
03
二维数组的应用
04
字符串与字符数组
05
字符串处理函数
C语言
知识树
My First Template
数组的认知
C语言程序设计
4
C语言
数组的认知
为什么要使用数组?
能够方便的存储多个值!
能够分类存储信息。
My First Template
C语言
数组的认知
为什么要使用数组?
唉,有这么大堆书。在哪里才能找到亲爱的C语言程序设计的书呢?
My First Template
C语言
数组的认知
为什么要使用数组?
文学类
计算机类
西方音乐类
中国音乐类
My First Template
C语言
数组的认知
为什么要使用数组?
容器中保
存的物品
日常生活中的容器
数组
内存
120
65
98
4
数组的元素
程序中的数组
My First Template
C语言
数组的认知
八个儿子
4间房
什么是数组
My First Template
刘老汉家
老大
老二
老三
……
老八
刘老汉
老大
老四
……
老七
C语言
刘老汉家
老四家
老三家
老二家
老大家
3
2
1
0
liu[ 4 ]
数组名
下标标明了元素在数组中的位置
数组元素
下标
数组大小
数 组
是一种数据类型,这种类型描述的是在一块连续的地址空间内存储相同类型的多个值的方法。
数组的认知
My First Template
C语言
数组的认知
数组的分类
数组按照维度或者说按照下标的个数分为一维数组、二维数组,数组和变量的使用一样可以归纳为三步:第一、数组的定义;第二、数组的初始化;第三、数组的引用。
一维数组
多维数组
89 90 77 …
示例:学生单生课程的成绩
2-D, 3-D, 4-D
73 90 33
45 80 87
学号
科目
0
1
0
1
2
示例:学生两门课程的成绩
My First Template
一维数组的应用
C语言程序设计
12
C语言
本次任务
利用数组存储多名学生成绩
C语言程序设计 --一维数组的应用
My First Template
C语言
一维数组的应用—任务分析
任务分析
成绩
99
32
98
100
3
2
1
0
score[ 4 ]
数组名
下标标明了元素在数组中的位置
数组元素
下标
数组大小
数 组
是一种数据类型,这种类型描述的是在一块连续的地址空间内存储相同类型的多个值的方法。
My First Template
C语言
一维数组的应用步骤
一维数组的应用—相关知识
My First Template
声明
初始化
引用
C语言
datatype arrayName[size];
元素类型说明符
int、char、float …
数组名
符合标识符的规则
常量表达式:
数组大小
int num[50];
char list_of_initials[20];
double pressure_level[6];
# define LIMIT 20
. . .
int emp_codes[LIMIT];
一维数组的声明
一维数组的应用—相关知识
My First Template
C语言
数组使用-一维数组的初始化
初始化的几种形式:
在数组声明时初始化
int a[5]={1,2,3,4,5};
在使用时进行初始化
int a[5];
a[0]=1;a[1]=2;
部分初始化
int a[5]={1,2,3};
直接初始化
int a[]={1,2,3,4};
数组不初始化,其元素值为随机数。
对static数组元素不赋初值,系统会自动赋以0值。
int a[5]={1,2,3,4,5};
等价于:a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5;
int a[]={1,2,3,4};
编译系统根据初值个数确定数组维数
static int a[5];
等价于:a[0]=0; a[1]=0; a[2]=0; a[3]=0; a[4]=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}; ()
一维数组的应用—相关知识
My First Template
C语言
数组使用-一维数组的动态初始化
内存
int score[4];
printf(“请输入4个学生的成绩
”);
for (i = 0;i <= 3; i++)
{
scanf(“%d”,& score [i]);
}
score[3]
score[2]
score[1]
score[0]
score
80
65
99
73
一维数组的应用—相关知识
My First Template
C语言
1、数组必须先定义,后使用
2、只能逐个引用数组元素,不能一次引用整个数组
3、数组元素表示形式: 数组名[下标]
其中:下标可以是常量或整型表达式
4、数组的引用不能越界
例 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语言对数组不作越界检查,使用时要 注意
数组使用-一维数组的引用
一维数组的应用—相关知识
My First Template
C语言
任务实现
#include "stdio.h"
void main()
{
int i;
int a[5]; /*定义含有5个元素的一维数组*/
printf("请输入5个学生的成绩:
"); /*提示输入*/
for(i=0;i<5;i++) /*输入5个分数*/
{
scanf("%d",&a[i]);
}
for(i=0;i<5;i++) /*输出5个分数*/
{
printf("第%d个学生的成绩为%d
",i,a[i]);
}
}
一维数组的应用—任务实现
运行结果
My First Template
$$