数据类型(二)改错:
//输入两个日期,求时间差多少天
方法2正确为:
DateTime dt1 = new DateTime();
DateTime dt2 = new DateTime();
int i = 0;
int sum = 0;
try
{
dt1 = DateTime.Parse(Console.ReadLine());
dt2 = DateTime.Parse(Console.ReadLine());
}
catch (Exception e)
{
Console.Write("输入错误!");
i++;
}
finally
{
if (i == 0)
{
if (dt1 > dt2)
{
DateTime dt3 = dt1;
dt1 = dt2;
dt2 = dt3;
}
for (int k = dt1.Year; k < dt2.Year; k++)
{
if (k % 100 == 0)
{
if (k % 400 == 0)
{
Console.Write(k + "是闰年");
sum += 366;
}
else
{
Console.Write(k + "不是闰年");
sum += 365;
}
}
else if (k % 4 == 0)
{
Console.Write(k + "是闰年");
sum += 366;
}
else
{
Console.Write(k + "不是闰年");
sum += 365;
}
sum += dt2.DayOfYear - dt1.DayOfYear;
}
}
}
Console.WriteLine("相差"+sum+"天");
Console.ReadLine();
练习:
//判断邮箱格式是否输入正确
Console.Write("请输入邮箱:");
string semail=Console.ReadLine();
semail = semail.ToLower();
string s="abcdefghijklmnopqrstuvwxyz1234567890_.@";
int sant=0;
int sdian=0;
int zhengque=0;
for (int i = 0; i < semail.Length; i++)
{
string sc = semail.Substring(i, 1);
bool b = s.Contains(sc);
if (b)
{
if (sc == "@")
{
sant++;
}
if (sc == ".")
{
sdian++;
}
}
else
{
Console.WriteLine("您的邮箱有特殊字符,请检查输入!");
zhengque++;
}
}
if (sant == 1 && sdian == 1&&zhengque==0)
{
if (semail.Contains("@.") || semail.IndexOf("@") > semail.IndexOf("."))
{
Console.WriteLine("@和.之间需要有邮箱地址代表字符,并且@必须在.前面");
}
else
{
if (semail.EndsWith(".com") || semail.EndsWith(".cn"))
{
Console.WriteLine("输入正确!");
}
else
{
Console.WriteLine("邮箱必须以.com或者.cn结尾");
}
}
}
else
{
Console.WriteLine("注意邮箱中只能出现一个@和一个.");
}
Console.ReadLine();
4、数组:
数组用来分组基本类型或相同类型的对象。数组中的实体叫做数组的元素或成员。
我们可以用Length来得到其中的元素的数目。(应用同字符串)
内存、连续、同一类数据的一块区域。
数组分类:
① 一维数组:
int[] shuzu = new int[6] { 1, 2, 3, 4, 5, 6 }; 定义一个整形数组,该数组含6个元素(数组下标都是从0开始)。
new为初始化,长度为6,{赋值}。
② 二维数组
③ 多维数组
应用练习:
练习:
//五个候选班长,20人投票,求得票最高的
int[] h = new int[5];
for (int i = 0; i < 20; i++)
{
Console.Write("请输入0--4投票:");
int t = Convert.ToInt32(Console.ReadLine());
if (t >= 0 && t <= 4)
{
h[t]++;
}
else
{
Console.WriteLine("此票为废票!");
}
}
int sum = 0;
foreach (int a in h)
{
sum = sum + a;
}
int z = h[0];
int m = 0;
for (int a = 1; a < 5; a++)
{
if (h[a] > z)
{
z = h[a];
m = a;
}
}
Console.WriteLine("{0}以{1}票当选班长!",m,z);
Console.WriteLine("总共有"+sum+"人投票!");
Console.ReadLine();