C语言-数组与结构

#一维数组(linear array )
数 组 名:标识这组相同的数组的名字
数组元素:构成数组的每个数据项
一维数组的定义:

        存储类型 数组名 [正整数]
eg :    float score [10];

定义数组时初始化数组的方法

int a[5]={1,2,3,4,5};		//全部初始化
int a[5]={5};				//用0初始化所有数据
int a[]={1,2,3,4,5};		//不指定数组长度
Int a[5]={1};				//第一个用1初始化,后面全部用0初始化

##数组的使用(use)
数组下标(index):数组元素的索引
数组下标都是从0开始,使用score[1]、score[2]…score[9]这样的形式访问每个元素,下标既可以是常量,也可以是整形表达式,允许快速随机访问,例如:score[i]

##数组的存储(save)
系统分配一块联系的存储空间,大小为数据类型大小*数组元素数量,数组名表示数组的首地址(第一个元素地址);

int a[10];
&a[6]=???
假设数组首地址a=1000,整数类型占4个字节空间
&a[6]=1000+4*6=1024

在这里插入图片描述
例:显示用户输入的月份有多少天(不考虑闰年的月份)?

输入:月份,如果不在[1,12],则要求重新输入
输出:月份对应的天数
算法:可以把12个月的天数存储在长度为12的一维数组中,然后把读入的月份month-1作为下标,读取值就作为天数。
#include"stdio.h"
#define MONTHS 12
int main()
{	
	int days[MONTHS]={31,28,31,30,31,30,31,31,30,31,31,30};
	int month;
	do{
		printf("Please input a month:");
		scanf("%d",&month);
	}while(month<1||month>12);			//去除非法输入的数据
	printf("The number of days is %d\n",days[months-1]);
	return 0;
}
发布了4 篇原创文章 · 获赞 1 · 访问量 116

猜你喜欢

转载自blog.csdn.net/qq_44189457/article/details/104434334