• 练习题(if else,switch case)


    第一题:

    打车起步价8元(3KM以内)
    超过3KM,每公里1.2元
    超过5KM,每公里1.5元

                                        

    static void Main(string[] args)
    {
    while (true)
    {
    double i;//打车里程不一定都是整数
    Console.WriteLine("打车路程:");
    i = Convert.ToDouble(Console.ReadLine());
    if (i<=3&&i>0)//里程的控制条件,小于3KM起步价
    {
    Console.WriteLine("打车费8元");
    }
    else if (i>3&&i<=5)//这个范围1.2元
    {
    i = 8 + (i - 3) * 1.2;
    Console.WriteLine("打车费"+i+"元");
    }
    else if (i>5)//大于5KM的1.5元
    {
    i = 8 + 2*1.2+(i - 5) * 1.5;
    Console.WriteLine("打车费"+i+"元");
    }
    else
    {
    Console.WriteLine("找茬?");
    }
    Console.ReadLine();

     

    第二题:结婚。 美女征婚,问有没有房,有没有车,有没有钱,满足三条结婚,其一不满足fasle        第一种写法是三个条件一起出,第二中写法是一问一答

    //输入:随机取值,列出各种情况

    //if限定条件,同时满足,输出。。。,不满足直接pass

    static void Main(string[] args)
    {
    while (true)
    {
    Random r = new Random();
    int a,b,c;

    a=r.Next(0,2);//随机取数0,1
    b=r.Next(0,2);
    c=r.Next(0,2);
    Console.WriteLine("美女征婚,请回答以下问题。你有房吗?你有钱吗?你有车吗?");

    switch (a)//a取值的结果
    {
    case 0://a取零的时候
    Console.WriteLine("你有房吗?:有");
    break;//跳出switch
    case 1:
    Console.WriteLine("你有房吗?:没有");
    break;

    default:
    Console.WriteLine("耍我玩呢?");
    break;
    }
    switch (b)
    {
    case 0:
    Console.WriteLine("你有钱吗?:有");
    break;
    case 1:
    Console.WriteLine("你有车吗?:没有");
    break;
    default:
    Console.WriteLine("耍我玩呢?");
    break;
    }
    switch (c)
    {
    case 0:
    Console.WriteLine("你有车吗?:有");
    break;
    case 1:
    Console.WriteLine("你有钱吗?:没有");
    break;
    default:
    Console.WriteLine("耍我玩呢?");
    break;
    }
    if (a==0&&b==0&&c==0)//三个条件同时满足
    {
    Console.WriteLine("我们结婚吧");
    }
    else
    {
    Console.WriteLine("下一个");
    }
    Console.ReadLine();
    }

    ——————————————————————————————————————————————————————————————————

    if语句的嵌套,一层一层的套,

    第一个if问第一个问题,如果满足条件套第二个if,以此类推。。。

    static void Main(string[] args)
    {
    while (true)
    {
    string s,b,c;
    Console.WriteLine("女神征婚,回答问题你有车吗?:");
    s = Console.ReadLine();
    if (s=="有")
    {
    Console.WriteLine("那你有车吗?:");
    b = Console.ReadLine();
    if (b=="有")
    {
    Console.WriteLine("那你有钱吗?:");
    c = Console.ReadLine();
    if (c=="有")
    {
    Console.WriteLine("我们结婚吧");
    }
    else
    {
    Console.WriteLine("洗洗睡吧");
    }
    }
    else
    {
    Console.WriteLine("洗洗睡吧");
    }
    }
    else
    {
    Console.WriteLine("洗洗睡吧");
    }
    Console.ReadLine();
    }

    第三题:输入月份,输入几号,得出是今年的第几天

    这是个switch的练习题。

    //先声明了1月到11月每月的天数

    //输入第几个月的第几天

    //按公式,把之前的月份天数加起来,得出今年的第几天

    //这时还没学习Datetime 写的的确有点麻烦,不过重在练习理解switch的用法

    static void Main(string[] args)
    {
    while (true)
    {
    int m1 = 31, m2 = 28, m3 = 31, m4 = 30, m5 = 30, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30;
    int m, d;
    Console.WriteLine("输入月份:");
    m = Convert.ToInt32(Console.ReadLine());
    if ((m <= 0 || m > 12))
    {
    Console.WriteLine("输入错误");
    }
    else
    {
    Console.WriteLine("输入第几天:");
    d = Convert.ToInt32(Console.ReadLine());

    if (d <= 0 || d > 31)
    {
    Console.WriteLine("输入错误");
    }

    else
    {


    switch (m)
    {
    case 1:
    Console.WriteLine("第" + d + "天");
    break;
    case 2:
    d = d + m1;
    Console.WriteLine("第" + d + "天");
    break;
    case 3:

    Console.WriteLine("第" + (d + m1 + m2) + "天");
    break;
    case 4:
    Console.WriteLine("第" + (d + m1 + m2 + m3) + "天");
    break;
    case 5:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4) + "天");
    break;
    case 6:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5) + "天");
    break;
    case 7:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5 + m6) + "天");
    break;
    case 8:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5 + m6 + m7) + "天");
    break;
    case 9:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8) + "天");
    break;
    case 10:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9) + "天");
    break;
    case 11:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10) + "天");
    break;
    case 12:
    Console.WriteLine("第" + (d + m1 + m2 + m3 + m4 + m5 + m6 + m7 + m8 + m9 + m10 + m11) + "天");
    break;

    default:
    Console.WriteLine("输入错误");
    break;
    }
    Console.ReadLine();
    }

     

  • 相关阅读:
    [SCOI2016]幸运数字
    [CQOI2013]新Nim游戏
    POJ-2485 Highways---最小生成树中最大边
    最小生成树之kruskal算法
    POJ-1789 Truck History---最小生成树Prim算法
    最小生成树之prim算法
    POJ-1182 食物链---并查集(附模板)
    POJ-2993 Emag eht htiw Em Pleh---棋盘模拟
    POJ-2996 Help Me with the Game---模拟棋子
    POJ-1573 Robot Motion模拟
  • 原文地址:https://www.cnblogs.com/qiaoyifan3111/p/4552634.html
Copyright © 2020-2023  润新知