【思路解析】
二维交错数组可以理解为一个元素类型的一维数组的一维数组。
交错数组的语法:元素类型 [ ][ ] 数组名称 = new 元素类型[行数] [ ]
对二维数组访问和赋值的语法: 数组名称 [行号] [列号] = 元素值;
【效果图示】
非 闰年:
闰年:
【实现过程】
static void Main(string[] args)
{ //输出制定年份的日期表
Console.WriteLine("请输入年份:");
int year = int.Parse(Console.ReadLine());
byte[][] months = new byte[12][];
for (int month = 0; month < 12; month++) //数组中的行列都以0开头;
{
if (month < 7)//1.3.5.7月是小月份,一般有31天
{
if (month % 2 == 0) //i=0时为true,i值为0时相当于数组中的1月份
months[month] = new byte[31];
else if (month == 1)//判断二月份的天数
{
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))//闰年判断
months[month] = new byte[29];
else
months[month] = new byte[28];
}
else months[month] = new byte[30];
}
else //对剩下的 8.9.10.11.12.月进行判断
{
if (month % 2 == 0)//i=8时为true,i值为8相当于数组中的9月份
months[month] = new byte[30];//判断9.11月份为30天
else
months[month] = new byte[31];
}
}
for (int month = 0; month < 12; month++)
{
Console.WriteLine("{0}月份:", month + 1);
for (int day = 0; day < months[month].Length; day++)
{
months[month][day] = (byte)(day + 1);
Console.Write("{0}日", months[month][day]);
}
Console.WriteLine();
}