您的位置:首页 > 编程语言 > C语言/C++

C语言基础-二维数组

2015-11-09 15:52 429 查看
一、二维数组的定义

一般格式:类型标识符 数组名[常量表达式1][常量表达式2]

注意事项:跟一维数组一样

二、二维数组的初始化

1.定义的同时初始化

a)完全初始化

例:int a[2][3] = {{1,5,2},{2,5,4}};//分段初始化
int a[2][3] = {1,5,2,2,5,4};//连续初始化
int a[][3] = {{1,5,2},{2,5,4}};//省略第一维
int a[][3] = {1,5,2,2,5,4};//省略第一维

b)部分初始化

例:int a[3][4] = {1};
1 0 0 0 
0 0 0 0 
0 0 0 0
int a[3][4] = {{1},{2},{3}};//可以省略第一维
1 0 0 0 
2 0 0 0
3 0 0 0
int a[3][4] = {1,2,3,4,5};//
1,2,3,4
5,0,0,0
0,0,0,0

2.先定义,后初始化

三、二维数组的遍历

/*二维数组的遍历:
访问二维数组的每一个元素
通过下标来访问
*/
#include <stdio.h>
int main(){
int a[3][4] = {1,2,3,4,5,6,7,8,9,1,2,3};
for(int i=0;i<3;i++){
for(int j=0;j<4;j++){
printf("%d\t",a[i][j]);
}
printf("\n");
}
return 0;
}

四、二维数组的一些应用

/*一个学习小组有5个人,每人3门课。求每门课的平均分和三门课的平均分
int score[5][3] = {
{80,75,92},
{61,65,71},
{59,63,70},
{85,87,90},
{76,77,85},
}*/
#include <stdio.h>
int main(){
int score[5][3] = {
{80,75,92},
{61,65,71},
{59,63,70},
{85,87,90},
{76,77,85},
};
int sum;
float average;
float total;
//遍历数组
for(int i=0;i<3;i++){
sum = 0;//每门课加完之后要清零,再计算下一门课
for(int j=0;j<5;j++){
sum += score[j][i];
average = (sum/5.0f);
}
printf("第%d门课的平均成绩是:%.2f\d\n",i+1,average);
total += average;
}
//求每门课的平均分

printf("三门课的总平均分:%.2f\n",total/3);
//求三门课的平均分
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息