条件语句练习
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
//相亲,“你有房子吗?”有,“咱们结婚吧”;没有,“你有钱吗?”有,“先买房,再结婚吧。”没有,
//“你有能力吗?”有,“先赚钱,再买房,再结婚吧!”,没有,“拜拜!”
Console.WriteLine("你有房子吗?");
string huida = Console.ReadLine();//因为回答不是一个数字,需要string定义
if (huida == "有")
{
Console.WriteLine("咱们结婚吧!");
}
else//没有
{
Console.WriteLine("你有钱吗?");
huida = Console.ReadLine();
if (huida == "有")
{
Console.WriteLine("先买房再结婚吧!");
}
else//没有
{
Console.WriteLine("你有能力吗?");
huida = Console.ReadLine();
if (huida == "有")
{
Console.WriteLine("先赚钱,再买房,再结婚吧!");
}
else //没有
{
Console.WriteLine("拜拜!");
}
}
}
Conso.readLine();
//分别输入月份 几号 输出是今年的第多少天,每年的1 3 5 7 8 10 12是31天,今年的2月是28天,其他是30天
int m1 = 31, m2 = 28, m3 = 31, m4 = 30, m5 = 31, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30;
//分别定义个个月的天数
Console.Write("请输入月份:");
int yf = int.Parse(Console.ReadLine());
Console.Write("请输入几号:");
int h = int.Parse(Console.ReadLine());//输入日期,赋值到h,
switch (yf)//排列每个月份,
{
case 1:
Console.WriteLine("第" + h.ToString() + "天");//一月输入几号,表示这是这一年的第几天,直接用h
break;//结束
case 2:
Console.WriteLine("第" + (m1 + h).ToString() + "天");//二月的多少号(h),加上一月的天数(m1=31),就是这一年的第几天
break;
//下面以此类推
case 3:
Console.WriteLine("第" + (m1 + m2 + h).ToString() + "天");
break;
case 4:
Console.WriteLine("第" + (m1 + m2 + m3 + h).ToString() + "天");
break;
case 5:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + h).ToString() + "天");
break;
case 6:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + h).ToString() + "天");
break;
case 7:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + h).ToString() + "天");
break;
case 8:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + h).ToString() + "天");
break;
case 9:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + h).ToString() + "天");
break;
case 10:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + h).ToString() + "天");
break;
case 11:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + h).ToString() + "天");
break;
case 12:
Console.WriteLine("第" + (m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + m11 + h).ToString() + "天");
break;
default://如果上面条件都不满足
Console.WriteLine("您输入的有误!");
break;
}
Console.ReadLine();
//输入年,月,日,判断格式是否正确
Console.Write("请输入年份:");
int year = int.Parse(Console.ReadLine());
//判断年份是否正确
if (year >= 0 && year <= 9999) //年份正确
{ //输入月份
Console.Write("请输入月份:");
int yf = int.Parse(Console.ReadLine());
//判断月份是否正确
if (yf >= 1 && yf <= 12)//月份正确
{ //输入日期
Console.Write("请输入日期:");
int day = int.Parse(Console.ReadLine());
//判断日期输入是否正确,首先判断大小月,先排除二月
//1.大,3.大,5.大,7.大,8.大,10.大,12.大;2,4,9,11小;2月特殊
//如果此条件成立,那么输入的是大月
if (yf == 1 || yf == 3 || yf == 5 || yf == 7 || yf == 8 || yf == 10 || yf == 12)
{
if (day > 0 && day <= 31)
{
Console.WriteLine("日期输入正确");
Console.WriteLine(year + "年" + yf + "月" + day + "日");
}
else
{
Console.WriteLine("您输入的日期有误!");
}
}
else if (yf == 4 || yf == 6 || yf == 9 || yf == 11)//输入的是小月
{
if (day > 0 && day <= 30) //日期输入正确
{
Console.WriteLine("日期输入正确");
Console.WriteLine(year + "年" + yf + "月" + day + "日");
}
else
{
Console.WriteLine("您输入的日期有误!");
}
}
else if (yf == 2) //输入的是二月,需要判断平年还是闰年
{//首先判断是否是闰年
//年份可以被4整除,且不能被100整除
//特殊年份(世纪年):可以被400整除
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) //是闰年
{
if (day > 0 && day <= 29) //日期输入正确
{
Console.WriteLine("日期输入正确");
Console.WriteLine(year + "年" + yf + "月" + day + "日");
Console.WriteLine(year + "年是闰年");
}
else//日期输入有误
{
Console.WriteLine("您输入的日期有误!");
}
}
else//说明不是闰年
{
if (day > 0 && day <= 28)//日期输入正确
{
Console.WriteLine("日期输入正确");
Console.WriteLine(year + "年" + yf + "月" + day + "日");
Console.WriteLine(year + "年不是闰年");
}
else//日期输入有误
{
Console.WriteLine("您输入的日期有误!");
}
}
}
}
else
{
Console.WriteLine("月份输入有误!");
}
}
else//年份输入有误
{
Console.WriteLine("年份输入有误!");
}
Console.ReadLine();