【数组与指针(1)】数组与多维数组——C Primer Plus 学习笔记


一、数组

  1.数组

  数组 由数据类型相同的一系列元素组成,有int,short,double,char等

  例如:内含12个整型元素的数组用于储存12个月的天数;


  2.数组的创建与初始化

   在使用数组之前,必须先初始化数组

以下是几种初始化数组的结果:

int arr[6]={0,0,0,0,0,212}//传统语法
int arr[6]={[5]=212}//把arr[5]初始为212,而未被初始化的元素都被设置为0

初始化列表中的项数应与数组的大小一致

int arr[]={1,[4]=4,8,10};//此时[4]后面的值会依次赋值给4后面的元素


注意:

  • 当初始化列表中的值少于数组元素个数时,编译器会把剩余元素都初始化为0
  • 当初始化列表中的值多于数组元素个数时,编译器会报错
  • 当省略方括号中的数字时,编译器会根据初始化列表中的项数来自动确定数组大小
  • 在使用数组时,要防止下标超出边界



二、多维数组

1.多维数组

引言
  要分析5年内每个月的降水量数据,首先要解决的问题便是如何表示数据。最好的解决情况是使用数组的数组…
  主数组有5个元素(每个元素代表每一年),每个元素是内含12个元素的数组(每个元素表示一个月)

float rain[5][12];
rain[1][3]  表示二行四列元素

2.读取数据

代码如下(示例):

#include <stdio.h>
#define YEARS 5
#define MONTHS 12	
int main()
{
	float rain[YEARS][MONTHS] =
	{
		{8.5, 8.2, 1.2, 1.6, 1.8, 7.3, 1.4, 0.9, 0.0, 0.8, 5.2, 6.5},
		{4.3, 8.7, 4.3, 5.6, 5.2, 6.5, 1.6, 8.7, 4.3, 5.6, 5.2, 6.5},
		{3.5, 8.2, 1.2, 1.6, 1.8, 7.3, 1.4, 0.9, 0.0, 0.8, 5.2, 6.5},
		{7.5, 6.2, 1.2, 1.6, 1.8, 7.3, 1.4, 0.9, 0.0, 0.8, 5.2, 6.5},
		{4.3, 8.7, 4.3, 5.6, 5.2, 6.5, 1.6, 8.7, 4.3, 5.6, 5.2, 6.5},
	};
	int year, month;
	for (year = 0; year < YEARS; year++) {
		for (month = 0; month < MONTHS; month++) {
			printf("%2d年 %3d月 has %.2f\n", year+1, month+1, rain[year][month]);
		}
	}
	return 0;
}

程序使用了两个嵌套的for循环。外层for循环遍历year,内层for循环遍历每个year的month.


三、其它多维数组

  可以这样声明一个三维数组:

int box[10][20][30];

也就是说,box含10个元素,每个元素是含20个元素的数组,其中的每个元素又是含30个元素的数组.
通常,处理三维数组要使用3重嵌套循环

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值