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();
原文地址:https://www.cnblogs.com/Itwonderful/p/5275615.html