• HQ-day9 C#综合应用实例


    案例一:for循环嵌套

     1    //输入年,月,日,判断格式是否正确
     2             for (; ; )
     3             {
     4                 Console.Write("请输入年份:");
     5                 int y = int.Parse(Console.ReadLine());
     6                 if (y >= 0 && y < 9999)
     7                 {
     8                     for (; ; )
     9                     {
    10                         Console.Write("请输入月份:");
    11                         int m = int.Parse(Console.ReadLine());
    12                         if(m>0&&m<=12)
    13                         {
    14                             for(;;)
    15                             {
    16                                 Console.Write("请输入日期:");
    17                                 int d =int.Parse(Console.ReadLine());
    18                                 if(d>0&&d<=31)
    19                                 {
    20                                     if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
    21                                     {
    22                                         Console.WriteLine("输入正确,"+y+"年,"+m+"月,"+d+"");
    23                                         break;
    24                                     }
    25                                     else if(m==4||m==6||m==9||m==11)
    26                                     {
    27                                         if(d>0&&d<=30)
    28                                         {
    29                                             Console.WriteLine("输入正确,"+y+"年,"+m+"月,"+d+"");
    30                                             break;
    31                                         }
    32                                         else
    33                                         {
    34                                             Console.WriteLine("输入有误");
    35                                         }
    36                                     }
    37                                     else
    38                                     {
    39                                         if(y%4==0&&y%100!=0||y%400==0)
    40                                         {
    41                                             if(d>0&&d<=29)
    42                                             {
    43                                                 Console.WriteLine("输入正确,"+y+"闰年,"+m+"月,"+d+"");
    44                                                 break;
    45                                             }
    46                                             else
    47                                             {
    48                                                 Console.WriteLine("输入有误");
    49                                             }
    50                                         }
    51                                         else
    52                                         {
    53                                             if(d>0&&d<=28)
    54                                             {
    55                                                 Console.WriteLine("输入正确,"+y+"平年,"+m+"月,"+d+"");
    56                                                 break;
    57                                             }
    58                                             else
    59                                             {
    60                                                 Console.WriteLine("输入有误");
    61                                             }
    62                                         }
    63                                     }
    64                                     break;
    65                                 }
    66                                 else
    67                                 {
    68                                      Console.WriteLine("输入有误");
    69                                 }
    70                             }
    71                             break;
    72                         }
    73                         else
    74                         {
    75                             Console.WriteLine("输入有误");
    76                         }
    77                     }
    78                     break;
    79                 }   
    80                 else
    81                 {
    82                     Console.WriteLine("输入有误");
    83                 }
    84             }

    案例二:一维数组应用

     1  //输入10个人的成绩,求他们的和和平均分;
     2             Console.Write("请输入人数:");
     3             int a = int.Parse(Console.ReadLine());
     4             double[] fen = new double[a];
     5             double sum = 0;
     6             for (int i = 0; i < a; i++)
     7             {
     8                 Console.Write("请输入第"+(i+1)+"个人的分数");
     9                 fen[i] = double.Parse(Console.ReadLine());
    10                 sum += fen[i];
    11             }
    12 
    13             Console.WriteLine("成绩总和是"+sum+",平均分是"+(sum/a)+"");

    案例三:二维数组应用

     1    //输入班级人数,将每人的语数外三科成绩用二维数组打印出来
     2             Console.Write("请输入班级人数:");
     3             int a = int.Parse(Console.ReadLine());
     4             double[,] fen = new double[a, 3];
     5             for (int i = 0; i < a; i++)
     6             {
     7                 for (int j = 0; j < 3; j++)
     8                 {
     9 
    10                     if (j == 0)
    11                     {
    12                         Console.Write("请输入第" + (i + 1) + "个人的语文成绩");
    13                     }
    14                     if (j == 1)
    15                     {
    16                         Console.Write("请输入第" + (i + 1) + "个人的数学成绩");
    17                     }
    18                     if (j == 2)
    19                     {
    20                         Console.Write("请输入第" + (i + 1) + "个人的英语成绩");
    21                     }
    22                     fen[i, j] = double.Parse(Console.ReadLine());
    23                 }
    24             }
    25             Console.ReadLine();

    案例四:一维数组的冒泡排序

     1  //输入班级人数,输入分数,输出最高分,最低分,去掉2个最高和最低分,求平均分。
     2             for (; ; )
     3             {
     4                 Console.Write("请输入班级人数:");
     5                 int a = int.Parse(Console.ReadLine());
     6                 if (a >= 5)
     7                 {
     8                     double[] fen = new double[a];
     9                     double zhong;
    10                     double sum = 0;
    11                     for (int i = 0; i < a; i++)
    12                     {
    13                         Console.Write("请输入第" + (i + 1) + "个人的分数:");
    14                         fen[i] = double.Parse(Console.ReadLine());
    15                     }
    16                     for (int j = 0; j < a; j++)
    17                     {
    18                         for (int k = j; k < a - 1; k++)
    19                         {
    20                             if (fen[j] < fen[k + 1])
    21                             {
    22                                 zhong = fen[k + 1];
    23                                 fen[k + 1] = fen[j];
    24                                 fen[j] = zhong;
    25                             }
    26                         }
    27                         sum += fen[j];
    28                     }
    29                     Console.Write("最高分是" + fen[0] + ",最低分是" + fen[(a - 1)] + ",去掉2个最高和最低分后的平均分是:" + (sum - fen[0] - fen[1] - fen[a - 1] - fen[a - 2]) / (a - 4));
    30                     break;
    31                 }
    32                 else
    33                 {
    34                     Console.WriteLine("输入人数不能少于五");
    35                 }
    36             }

     案例五:滚动号码抽奖代码

     1  //输入一些手机号,抽奖
     2             Console.Write("请输入号码数量");
     3             int a = int.Parse(Console.ReadLine());
     4             string[] hm = new string[a];
     5             for (int i = 0; i < a; i++)
     6             {
     7                 Console.Write("请输入第" + (i + 1) + "个号码:");
     8                 hm[i] = Console.ReadLine();
     9             }
    10             Console.WriteLine("输入完毕,请按回车键开始滚屏");
    11             Console.ReadLine();
    12             Random ran = new Random();
    13             int j = 0;
    14             for (; ; )
    15             {
    16                 int b = ran.Next(a);
    17                 Console.Clear();
    18                 Console.WriteLine(hm[b]);
    19                 System.Threading.Thread.Sleep(100);
    20                 if(j==49)
    21                 {
    22                     Console.Clear();
    23                     Console.WriteLine(hm[b]);
    24                     break;
    25                 }
    26                 j++;
    27             }
    28             Console.ReadLine();

     案例六:人机对战【剪子包袱锤】

     1 for (; ; ) //48行代码
     2             {
     3                 Console.WriteLine("剪子【1】包袱【2】锤【3】");
     4                 Console.WriteLine("你出哪个?");
     5                 int a = int.Parse(Console.ReadLine());
     6                 if (a <= 0 || a > 3)
     7                 {
     8                     Console.WriteLine("输入有误");
     9                 }
    10                 else
    11                 {
    12                     switch (a)
    13                     {
    14                         case 1:
    15                             Console.WriteLine("你出的是剪子");
    16                             break;
    17                         case 2:
    18                             Console.WriteLine("你出的是包袱");
    19                             break;
    20                         case 3:
    21                             Console.WriteLine("你出的是锤子");
    22                             break;
    23                     }
    24                     System.Threading.Thread.Sleep(1000);
    25                     Random ran = new Random();
    26                     int b = ran.Next(3);
    27                     string[] c = new string[3] { "剪子", "包袱", "锤子" };
    28                     Console.WriteLine("电脑出的是:" + c[b]);
    29                     //剪子 包袱 锤  a
    30                     //  1    2   3
    31                     // 剪子 包袱 锤  b
    32                     //  0    1   2
    33                     if (a - b == 3 || a - b == 0)
    34                     {
    35                         Console.WriteLine("你赢了");
    36                         break;
    37                     }
    38                     if (a - b == 2 || a - b == -1)
    39                     {
    40                         Console.WriteLine("你输了");
    41                         break;
    42                     }
    43                     else
    44                     {
    45                         Console.WriteLine("平局,再来!");
    46                     }
    47                 }
    48             }
    49             Console.ReadLine();
  • 相关阅读:
    关于组建“智彩足球技术研究团队”的说明
    2次成功投诉EMS和中国移动的经验
    为什么选择玩足球彩票以及玩彩票的心态?
    【原创】机器学习之PageRank算法应用与C#实现(1)算法介绍
    【原创】开源Math.NET基础数学类库使用(17)C#计算矩阵条件数
    【原创】开源Math.NET基础数学类库使用(16)C#计算矩阵秩
    【文章】本站收集与转载文章目录
    【原创】.NET读写Excel工具Spire.Xls使用(3)单元格控制
    分享一个Visual Studio的背景插件,让堆码更富情趣
    【原创】开源Math.NET基础数学类库使用(15)C#计算矩阵行列式
  • 原文地址:https://www.cnblogs.com/Itwonderful/p/5275615.html
Copyright © 2020-2023  润新知