c语言二维数组

初始化和打印方式:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
void test()
{
	//赋值打印方式
	//1.
	int arr[2][3];
	arr[0][0] = 1;
	arr[0][1] = 2;
	arr[0][2] = 3;
	arr[1][0] = 4;
	arr[1][1] = 5;
	arr[1][2] = 6;
	//2.
	int arr1[2][3] = {
		{1,2,3},
		{4,5,6},//最后一行末尾逗号可以省去
	};
	//3.
	int arr2[2][3] = { 1,2,3,4,5,6 };
	//4,行可以省,列不能省
	//为初始化部分用0填补
	int arr3[ ][3] = { 1,2,3,4,5,6,7 };
	for (int i = 0; i < 3; i++)
	{
		for (int j = 0; j < 3; j++)
		{
			printf("%d ", arr3[i][j]);
		}
		printf("\n");
	}

}
int main()
{
	test();
	return 0;
}

二维数组数组名:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
void test()
{
	//二维数组数组名
	int arr[2][3] = {
		{1,2,3},
		{4,5,6}
	};
	//整个二维数组的大小
	int num = sizeof(arr);
	printf("%d\n", num);
	//二维数组一行的大小
	int num1 = sizeof(arr[0]);
	printf("%d\n", num1);
	//二维数组某一个元素的大小
	int num2 = sizeof(arr[0][0]);
	printf("%d\n", num2);

	//获取行数和列数
	int hang = sizeof(arr) / sizeof(arr[1]);
	printf("行数:%d\n", hang);
	int lie = sizeof(arr[1]) / sizeof(arr[1][1]);
	printf("列数:%d\n", lie);

	//获取二维数组首地址
	printf("二维数组首地址:%d\n", arr);
	printf("二维数组第一行首地址:%d\n", arr[0]);
	printf("二维数组第二行首地址:%d\n", arr[1]);
	printf("二维数组第一个元素首地址:%d\n", &arr[0][0]);


}
int main()
{
	test();
	return 0;
}

在这里插入图片描述
案例:求学生考试成绩

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//求学生考试成绩
void test()
{
  //存放3学生三门功课成绩的二维数组
	int score[3][3] = {
		{90,93,85},
		{84,95,89},
		{95,82,94}
	};
	//存放三名学生姓名的二维数组
	char name[3][20] = {
		{"大忽悠"},
		{"小忽悠"},
		{"小朋友"}
	};
	//求出每位学生的平均成绩
	int hang = sizeof(score) / sizeof(score[0]);
	int lie = sizeof(score[0]) / sizeof(score[0][0]);
	//外层循环算每位学生的平均成绩
	for (int i = 0; i < hang; i++)
	{
		//算每位学生总成绩
		int sum = 0;
		//内层循环算出每位学生的总成绩
		for (int j = 0; j < lie; j++)
		{
			sum += score[i][j];
		}
		//每次打印name二维数组一行的内容,每一行存放一串字符串,可以用%s直接读取
		printf("学生姓名: %s\t 三门功课平均成绩:%d\n", name[i], sum / 3);
	}

}
int main()
{
	test();
	return 0;
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值