10-19C#基础--第四部分类型(2)重点
类型:
一、数字:Math类型
1)Math.Ceiling() ( 表示进位。));//只要小数点后有值,就向前进一位,取上限。
string s = Console.ReadLine();
double d = double.parse(s);
d = Math.Ceiling(d);
d = Math.Floor(d);
Console.Write(d);
Console.ReadLine();
执行后:
2)Math.Floor());//返回小于或等于指定双精度浮点数的最大整数;
string s = Console.ReadLine();
double d = double.parse(s);
d = Math.Floor(d);
Console.Write(d);
Console.ReadLine();
执行后:
3)Math.Sqrt();表示开方
4)Math.pl();表示圆周率。
二、日期时间型--DateTime(重点)
1)DateTime dt = new DateTime();//必须要初始化,定义一个变量;如果只初始化,不赋值,计算机自动从默认最小的年月日开始计算;默认时间为:0001年1月1日12:00:00 am
sring s = Console.ReadLine();
DateTime dt = new DateTime();//
Console.Write(dt);
Console.ReadLine();
执行后:
2)DateTime dt = new DateTime();//也可以创建一个时间
例如:DateTime dt = new DateTime(1998,12,12,12,12,11):创建的时间为1998年12月12日12点12分11秒
3)DateTime dt= DateTime.Now;//获取计算机上的本地时间,当作是一类,属性是now,返回是Datetime类型的值。
格式:
sring s = Console.ReadLine();
DateTime dt = DateTime.Now;
Console.Write(dt);
Console.ReadLine();
执行后:
4) .Year;//获取当前计算机上的年份;
sring s = Console.ReadLine();
DateTime dt=new DateTime();
dt=DateTime.Now;
int i = dt.Year;
Console.Write(i);
Console.ReadLine();
执行后:
5) .DayOfWeek;//返回的是dayOfweek类型,例:sunday;返回是什么类型就用什么类型接收;
sring s = Console.ReadLine();
DateTime dt=new DateTime();
DayOfWeek d = dt.DayOfWeek;
Console.Write(d);
Console.ReadLine();
执行后:
值类型与引用类型之间的转换
6) int i = dt.DayOfYear();//返回日期是当年的第几天,返回int类型;
格式:
sring s = Console.ReadLine();
DateTime dt=new DateTime();
int i = dt.DayOfYear();
Console.Write(i);
Console.ReadLine();
执行后:
7)//s = dt.ToString("yyyy年MM月dd日hh时mm分ss秒ms毫秒");//返回的是string类型,string后面可以设定格式:“yyyy,MM,dd,hh,mm,ss,ms分别是年月日时分秒毫秒的代位符”,必须运用这种格式。
注:虽然输入毫秒,但在执行是计算机不输出毫秒,因为没有设定;
sring s = Console.ReadLine();
DateTime dt=new DateTime();
dt=DateTime.Parse(s);
s = dt.ToString("yyyy年MM月dd日hh时mm分ss秒ms毫秒");
Console.Write(s);
Console.ReadLine();
执行后:
三、时间间隔类型-- TimeSpan()
1) System.TimeSpan time = new TimeSpan();//timeSpan是时间间隔类型,最大加到天(日),最小是100毫微秒,不能加年、月;返回datetime类型;
dt=dt.Add(time);//只能是时间间隔的类型,参数是timeSpan类型的值;
执行后:
2) .AddYears(2);//当遇到闰年29号,加完不是闰年的显示28号,不自动进入下一个月;
执行后:
3)//dt = dt.AddMonths(3);//加多少个月,当前面的月为31天超出后面的天数,取当前月的最大值,不自动进入下个月,不能加小数,参数是int;
格式:
string s = Console.ReadLine();
DateTime dt = new DateTime();
dt = DateTime.Parse(s);
dt = dt.AddMonths(3);
Console.Write(dt);
Console.ReadLine();
执行后:
4) //dt = dt.AddDays(1.2);//加多少天,参数是double类型的值
执行后:
5) //dt = dt.AddHours(1.2);//加多少个小时,参数是double
输入一个普通的日期:
输入一个特殊的月份:
练习题1:输入年份,判断是不是闰年:
练习题2:判断输入的年月日是否正确;