二维数组的含义
二维数组可以表示一个平面的内容,可以将其看作 元素是一维数组的一维数组。
二维数组的定义格式
定义
数据类型 数组名[数组行数][数组列数]
初始化:
int a[][5]{{1,2,3,4,5},
{6,7,8,9,10},
{11,12,13,14,15}
};
注意可以不定义行,但是必须定义列。
例子
成绩单打印
#include <iostream>
using namespace std;
int main()
{
//使用二维数组
string stu_names[] {"刘备","关羽", "张飞"};
string course_names[] {"语文","数学","英语"};
const int ROW =3;//sizeof(stu_names)/sizeof(stu_names[0])
const int COL=3;//sizeof(course_names)/sizeof(course_names[0])
double scores[ROW][COL];
for(int i=0; i<ROW; i++) //外层循环控制学生
for(int j=0; j<COL; j++) //内层循环控制课程
{
cout<<stu_names[i]<<"的"<<course_names[j]<<"成绩: ";
cin>>scores[i][j];
}
cout<<"\t";
for(int i=0;i<COL;i++)
cout<<course_names[i]<<"\t";
cout<<endl;
for(int i=0;i<ROW;i++){
cout<<stu_names[i]<<"\t";
for(int j=0;j<COL;j++){
cout<<scores[i][j]<<"\t";
}
cout<<endl;
}
return 0;
}
输出:
刘备的语文成绩: 23
刘备的数学成绩: 45
刘备的英语成绩: 6
关羽的语文成绩: 78
关羽的数学成绩: 43
关羽的英语成绩: 55
张飞的语文成绩: 67
张飞的数学成绩: 78
张飞的英语成绩: 23
语文 数学 英语
刘备 23 45 6
关羽 78 43 55
张飞 67 78 23