zoukankan      html  css  js  c++  java
  • C#基础 分支语句练习题(中间变量,随机数的使用)

    练习一

    请输入年份:”(1-9999),请输入月份:”(1-12),请输入日期(要判断大小月,判断闰年),判断输入的时间日期是否正确。

    计算输入的时间是当前这一年的第几天。

      1   bool dateISOK = false;//放置日期是否正确的判断
      2             bool isRN = false;//放置是否是闰年的判断
      3             int year = 0;
      4             int month = 0;
      5             int day = 0; 
      7             //判断年份是否正确
      8             Console.Write("请输入年份:");
      9             year = Convert.ToInt32(Console.ReadLine());
     10             if (year >= 1 && year <= 9999)
     12             {
     13                 if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
     14                 {
     15                     isRN = true;
     16                 } 
     18                 //判断月份是否正确
     19                 Console.Write("年份输入正确,请输入月份:");
     20                 month = Convert.ToInt32(Console.ReadLine());
     21                 if (month > 0 && month < 13)
     22                 {
     23                     Console.Write("月份输入正确,请输入日期:");
     24                     //判断日期是否正确
     25                     day = Convert.ToInt32(Console.ReadLine()); 
     27                     if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
     28                     {
     29                         if (day >= 1 && day <= 31)
     30                         {
     31                             Console.WriteLine("输入的全部日期正确!");
     32                             dateISOK = true;
     33                         }
     34                         else
     35                         {
     36                             Console.WriteLine("输入的日期有误!");
     37                         }
     38                     }
     39                     if (month == 4 || month == 6 || month == 9 || month == 11)
     40                     {
     41                         if (day >= 1 && day <= 30)
     42                         {
     43                             Console.WriteLine("输入的全部日期正确!");
     44                             dateISOK = true;
     45                         }
     46                         else
     47                         {
     48                             Console.WriteLine("输入的日期有误!");
     49                         }
     50                     }
     51                     else if (month == 2)
     52                     {
     53                         if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
     54                         {
     55                             if (day >= 1 && day <= 29)
     56                             {
     57                                 Console.WriteLine("输入的全部日期正确!");
     58                                 dateISOK = true;
     59                             }
     60                             else
     61                             {
     62                                 Console.WriteLine("输入的日期有误!");
     63                             }
     64                         }
     65                         else
     66                         {
     67                             if (day >= 1 && day <= 28)
     68                             {
     69                                 Console.WriteLine("输入的全部日期正确!");
     70                                 dateISOK = true;
     71                             }
     72                             else
     73                             {
     74                                 Console.WriteLine("输入的日期有误!不是闰年2月最多28天");
     75                             }
     76                         }
     77                     }
     78                 }
     79                 else
     80                 {
     81                     Console.WriteLine("输入的月份有误!");
     82                 }
     83             }
     84             else
     85             {
     86                 Console.WriteLine("输入的年份有误!");
     87             }
     88 
     89             //如果日期都正确,我们开始计算第几天
     90             if (dateISOK == true)
     91             {
     92                 int count = 0;
     93                 int m1 = 31, m2 = 28, m3 = 31, m4 = 30, m5 = 31, m6 = 30, m7 = 31, m8 = 31, m9 = 30, m10 = 31, m11 = 30, m12 = 31;
     94 
     95                 if (month == 1)
     96                     count = day;
     97                 if (month == 2)
     98                     count = m1 + day;
     99                 if (month == 3)
    100                 {
    101                     if (isRN == true)
    102                         count = m1 + m2 + 1 + day;
    103                     else
    104                         count = m1 + m2 + day;
    105                 }
    106                 if (month == 4)
    107                 {
    108                     if (isRN == true)
    109                         count = m1 + m2 + 1 + m3 + day;
    110                     else
    111                         count = m1 + m2 + m3 + day;
    112                 }
    113                 if (month == 5)
    114                 {
    115                     if (isRN == true)
    116                         count = m1 + m2 + 1 + m3 + m4 + day;
    117                     else
    118                         count = m1 + m2 + m3 + m4 + day;
    119                 } 
    121                 Console.WriteLine(year + "" + month + "" + day + "日是此年的第" + count + "");
    122             } 
    127             Console.ReadLine();

     注意此方案中间变量的使用,

    bool  b =false;假设结果默认错误,

    在if 中计算的结果可分为两种 false  true 

    结果正确时  b = true;(赋值)  结果错误时默认

    在后面执行运算时可直接引用  if ( b==true )

    练习二

    猜拳
     请输入您的手势(石头/剪子/包袱),用户赢了” “电脑赢了” “平局”

    猜拳将用户的手势和电脑的手势输出出来

     1  #region 手势生成
     2             Console.Write("请输入您的手势(石头、剪刀、包袱):");
     3             string user = Console.ReadLine();
     4             int user1;
     5 
     6             if (user == "石头")
     7                 user1 = 0;
     8             else if (user == "剪刀")
     9                 user1 = 1;
    10             else
    11                 user1 = 2;
    12 
    13             Random r = new Random();
    14             int com = r.Next(0, 3);
    15             #endregion
    16 
    17             #region 输出两位选手的手势
    18             string comEnd = "";
    19 
    20             if (user != "剪刀" && user != "石头")
    21             {
    22                 user = "包袱";
    23             }
    24 
    25             if (com == 0)
    26                 comEnd = "石头";
    27             else if (com == 1)
    28                 comEnd = "剪刀";
    29             else
    30                 comEnd = "包袱";
    31 
    32             Console.WriteLine("用户手势:" + user + "	电脑手势:" + comEnd);
    33             #endregion
    34 
    35             #region 胜负判断
    36             if ((user1 == 0 && com == 1) || (user1 == 1 && com == 2) || (user1 == 2 && com == 0))
    37             {
    38                 Console.WriteLine("用户胜利!");
    39             }
    40             else if ((user1 == 0 && com == 2) || (user1 == 1 && com == 0) || (user1 == 2 && com == 1))
    41             {
    42                 Console.WriteLine("用户失败!");
    43             }
    44             else
    45             {
    46                 Console.WriteLine("平局!");
    47             }
    48             #endregion
    49 
    50             Console.ReadLine();

    此案例应注意的是随机数的使用和把随机变量转换成字符串输出。

  • 相关阅读:
    alt、title和label
    css3-transform
    word break和word wrap
    聊聊svg
    JS严格模式
    JS提前声明和定义方式
    js跨域
    IE7append新的元素自动补充完整路径
    HTML5摇一摇
    基于jQuery仿uploadify的HTML5图片上传控件jquery.html5uploader
  • 原文地址:https://www.cnblogs.com/Tanghongchang/p/6441380.html
Copyright © 2011-2022 走看看