内容正文:
三
二维数组
PART
任务3 二维数组
1.二维数组定义
定义形式:
类型说明符 数组名[常量表达式1] [常量表达式2]
例如: int a[2][3];
数组名为?a数组有几个元素?分别是?每个数组元素的类型是?
任务3 二维数组
测一测
定义一个二维数组,用来存放60个学生7门
课的成绩。
任务3 二维数组
例如:
int i,a[3][4]
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
scanf(“%d”,&a[i][j]);
2.二维数组元素引用
引用格式:
数组名[行下标] [列下标]
【注意】在引用数组元素时,要注意下标不能越界。
任务3 二维数组
初始化
1)按行分段赋初值。例如:
static int a[2][3]={ {1,2,3},{4,5,6} };
2)连续赋初值。例如:
static int a[2][3]={ 1,2,3,4,5,6 };
3)部分赋初值。例如:
static int a[3][3]={ {1},{2},{3} };
4)省略维数赋值。例如:
static int a[2][2]={ 1,2,3,4 };或写为:
static int a[ ][2]={ 1,2,3,4 };
任务3 二维数组
初始化
1)按行分段赋初值。例如:
static int a[2][3]={ {1,2,3},{4,5,6} };
2)连续赋初值。例如:
static int a[2][3]={ 1,2,3,4,5,6 };
3)部分赋初值。例如:
static int a[3][3]={ {1},{2},{3} };
4)省略维数赋值。例如:
static int a[2][2]={ 1,2,3,4 };或写为:
static int a[ ][2]={ 1,2,3,4 };
【注意】
1)只有对数组的全部元素赋初值时,数组
的第一维长度可以省略,但第二维不能
省;
2)若对数组的部分元素赋初值,则数组的
第一维和第二维长度均不能省。
任务3 二维数组
任务实施
【例6-4】设计一个程序,输出下列矩阵。
程序分析:
1)定义一个二维数组,用来存放3×3的矩阵,二维数组数据的录入可以采用初始化的方法,也可以采用双重循环来实现(本例中采用初始化的方法)。
2)程序用一个双重for语句来输出矩阵,注意换行符的使用。
任务3 二维数组
二维数组应用举例
【例6-5】有一个3×4
的矩阵,编程求出其中
最大的那个元素的值,
以及其所在的行号和列
号。
四
字符数组与字符串
PART
任务4 字符数组与字符串
1.字符数组定义
定义形式:
char 数组名[常量表达式]
例如: char c[10];
在C语言中,由于字符型和整型通用,因此,字符数组也可以定义为: int c[10] ;
任务4 字符数组与字符串
2.字符数组的初始化
(1)用字符常量逐个初始化数组。例如:
static char c[9]= {‘c’,‘ ’,‘p’,‘r’,‘o’,‘g’,
‘r’,‘a’,‘m’};
(2)字符串常量初始化数组。例如:
1)char c[10]={“C program”};
2)char c[10]=“C program”;
3)char c[]=“C program”;
任务4 字符数组与字符串
3.字符数组的引用
字符数组元素的引用形式为:
数组名[下标]
例6-6】输入“I like playing football.”并显示出来。
任务4 字符数组与字符串
字符串
1)概念
字符串是指若干有效字符的序列。
2)字符串的存放
借助数组存放
3)字符串结束标志
\0
4)注意
C语言中只有字符串常量,没有字符串变量
任务4 字符数组与字符串
字符串
不同初始化方式下数据在字符数组中的存