C#那20道题

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _20道题 { class Program { static void Main(string[] args) { for (; ; ) { //1.输入三个整数,xyz,最终以从小到大的方式输出。利用if嵌套。 //Console.Write("请输入x="); //double x = double.Parse(Console.ReadLine()); //Console.Write("请输入y="); //double y = double.Parse(Console.ReadLine()); //Console.Write("请输入z="); //double z = double.Parse(Console.ReadLine()); //if (x > y) //{ // if (y > z) // { // Console.WriteLine("从小到大的排列顺序为:"); // Console.WriteLine(z); // Console.WriteLine(y); // Console.WriteLine(x); // } // else if (x > z) // { // Console.WriteLine("从小到大的排列顺序为:"); // Console.WriteLine(y); // Console.WriteLine(z); // Console.WriteLine(x); // } // else // { // Console.WriteLine("从小到大的排列顺序为:"); // Console.WriteLine(y); // Console.WriteLine(x); // Console.WriteLine(z); // } //} //else //{ // if(x>z) // { // Console.WriteLine("从小到大的排列顺序为:"); // Console.WriteLine(z); // Console.WriteLine(x); // Console.WriteLine(y); // } // else if (z > y) // { // Console.WriteLine("从小到大的排列顺序为:"); // Console.WriteLine(x); // Console.WriteLine(y); // Console.WriteLine(z); // } // else // { // Console.WriteLine("从小到大的排列顺序为:"); // Console.WriteLine(x); // Console.WriteLine(z); // Console.WriteLine(y); // } //} ////2.输入三个整数,xyz,最终以从小到大的方式输出。利用中间变量。 //Console.Write("请输入x="); //double x = double.Parse(Console.ReadLine()); //Console.Write("请输入y="); //double y = double.Parse(Console.ReadLine()); //Console.Write("请输入z="); //double z = double.Parse(Console.ReadLine()); //double m = x; //if (x > y&&x>z) //{ // if (y > z) // { // x = z; // z = m; // } // else // { // x = y; // y = z; // z = m; // } //} //else if (y > x && y > z) //{ // if (x > z) // { // x = z; // z = y; // y = m; // } // else // { // m = z; // z = y; // y = m; // } //} //else //{ // if(x>y) // { // x = y; // y = m; // } //} //Console.WriteLine("从小到大的排列顺序为:"); //Console.WriteLine(x); //Console.WriteLine(y); //Console.WriteLine(z); //3.输入三个整数,xyz,最终以从小到大的方式输出。利用条件运算符。 //Console.Write("请输入x:"); //double x = double.Parse(Console.ReadLine()); //Console.Write("请输入y:"); //double y = double.Parse(Console.ReadLine()); //Console.Write("请输入z:"); //double z = double.Parse(Console.ReadLine()); //double max = x > y ? (x > z ? x : z) : (y > z ? y : z); //double min = x < y ? (x < z ? x : z) : (y < z ? y : z); //double zhong = x > y ? (y > z ? y : (z > x ? x : z)) : (x > z ? x : (z > y ? y : z)); //Console.WriteLine("从小到大的顺序排列为:"); //Console.WriteLine(min); //Console.WriteLine(zhong); //Console.WriteLine(max); //4.“现在几点了?”键盘键入小时数,判断是上午还是下午。打印出来现在是上午几点还是下午几点。利用条件运算符。 //Console.Write("现在几点了?"); //int t = int.Parse(Console.ReadLine()); //string m = ((t < 25) && (t > -1)) ? ((t < 13) ? ("现在是上午am:" + t) : ("现在是下午pm:" + (t - 12))) : "您输入的有误"; //Console.WriteLine(m); //5.相亲过程:你有房子么?你有钱么?你有能力么?【结婚吧】【先买房子在结婚】【先赚钱再买房子再结婚】都没有【拜拜~~】利用if嵌套做相亲过程。 //Console.WriteLine("你有房么?"); //string a = Console.ReadLine(); //if (a == "有") //{ // Console.WriteLine("结婚吧"); //} //else //{ // Console.WriteLine("你有钱吗"); // string b = Console.ReadLine(); // if (b == "有") // { // Console.WriteLine("先买房再结婚"); // } // else // { // Console.WriteLine("你有能力么?"); // string c = Console.ReadLine(); // if (c == "有") // { // Console.WriteLine("先赚钱再买房再结婚"); // } // else // { // Console.WriteLine("拜拜~~"); // } // } //} //6.输入年月日,看看格式是否正确。利用if嵌套。 //Console.Write("请输入年:"); //double n = double.Parse(Console.ReadLine()); //double e = 0; //if (n > 0 && n < 10000) //{ // if (((n % 4) == 0 && (n % 100) != 0) || (n % 400) == 0) // { // Console.WriteLine("此年为闰年"); // e = 28; // } // else // { // Console.WriteLine("此年为平年"); // e = 27; // } // Console.Write("请输入月:"); // double y = double.Parse(Console.ReadLine()); // if (y > 0 && y < 13) // { // Console.Write("请输入日:"); // double r = double.Parse(Console.ReadLine()); // if (y == 1 || y == 3 || y == 5 || y == 7 || y == 8 || y == 10 || y == 12) // { // if (r > 0 && r < 32) // { // Console.WriteLine("您输入的日期格式正确"); // Console.WriteLine("日期为:" + n + "年" + y + "月" + r + "日"); // } // else // { // Console.WriteLine("您输入的日有误"); // } // } // if (y == 4 || y == 6 || y == 9 || y == 11) // { // if (r > 0 && r < 31) // { // Console.WriteLine("您输入的日期格式正确"); // Console.WriteLine("日期为:" + n + "年" + y + "月" + r + "日"); // } // else // { // Console.WriteLine("您输入的日有误"); // } // } // if (y == 2) // { // if (r > 0 && r <= e) // { // Console.WriteLine("您输入的日期格式正确"); // Console.WriteLine("日期为:" + n + "年" + y + "月" + r + "日"); // } // else // { // Console.WriteLine("您输入的日有误"); // } // } // } // else // { // Console.WriteLine("您输入的月有误"); // } //} //else //{ // Console.WriteLine("您输入的年有误"); //} //7.输入年月日,看看格式是否正确。利用DateTime。 //(1) //DateTime dt=DateTime.Now; //Console.Write("请输入现在的年:"); //string n = Console.ReadLine(); //Console.Write("请输入今天是几月:"); //string y = Console.ReadLine(); //Console.Write("请输入今天几号:"); //string r = Console.ReadLine(); //string m=n+"年"+y+"月"+r+"日"; //if (m == dt.ToLongDateString().ToString()) //{ // Console.WriteLine("您输入的日期正确是今天"); // Console.WriteLine("今天的日期是:" + dt.ToLongDateString().ToString()); //} //else //{ // Console.WriteLine("您输入的日期不正确不是今天"); // Console.WriteLine("今天的日期是:" + dt.ToLongDateString().ToString()); //} //(2) //DateTime dt; //try //{ // Console.Write("请输入日期:(例如:2000-01-01 或 2000/01/01):"); // dt = DateTime.Parse(Console.ReadLine()); // Console.WriteLine("您输入的格式正确,日期为:{0}年{1}月{2}日", dt.Year, dt.Month, dt.Day); //} //catch //{ // Console.WriteLine("您输入的格式不对"); //} //8.做人机猜拳,剪刀石头布。利用switch case。 //string[] j = new string[3] { "剪刀", "石头", "布" }; //Random g = new Random(); //int r = 0; //int q = 0; //for (; ; ) //{ // Console.Write("请输入你的选择(例:剪刀,石头,布):"); // int a = g.Next(3); // string c = Console.ReadLine(); // if (c == "剪刀" || c == "石头" || c == "布") // { // Console.WriteLine("机器出:" + j[a]); // switch (c) // { // case "剪刀": // switch (a) // { // case 0: // Console.WriteLine("平局"); // break; // case 1: // Console.WriteLine("你输了"); // q++; // break; // default: // Console.WriteLine("你赢了"); // r++; // break; // } // break; // case "石头": // switch (a) // { // case 0: // Console.WriteLine("你赢了"); // r++; // break; // case 1: // Console.WriteLine("平局"); // break; // default: // Console.WriteLine("你输了"); // q++; // break; // } // break; // default: // switch (a) // { // case 0: // Console.WriteLine("你输了"); // q++; // break; // case 1: // Console.WriteLine("你赢了"); // r++; // break; // default: // Console.WriteLine("平局"); // break; // } // break; // } // } // else // { // Console.WriteLine("您输入有误"); // } // Console.WriteLine("您赢了:" + r + "把"); // Console.WriteLine("机器赢了:" + q + "把"); //} //9.输入一个正整数,求1!+2!+3!+...+n!。利用for循环嵌套。 //Console.Write("请输入一个正整数:"); //int a = int.Parse(Console.ReadLine()); //double b=0, c; //for (int i = 1; i <= a; i++) //{ // c = 1; // for (int j = 1; j <= i; j++) // { // c *= j; // } // b += c; //} //Console.WriteLine("结果为:"+b); // 10.找出100以内与7有关的数并打印,并求出他们的和。利用for循环+if。 //int a = 0; //int sum = 0; //for (int i = 1; i <= 100;i++ ) //{ // if(i%7==0||i%10==7||i/10==7) // { // Console.WriteLine(i); // a++; // sum += i; // } //} //Console.WriteLine("一共有"+a+"个"); //Console.WriteLine("它们的和为:"+sum); //11.一个游戏,前20关是每一关自身的分数,1-30关每一关是10分,31-40关,每一关是20分,1-49关,每一关是30分,第50关是100分,输入你现在闯到的关卡数,求你现在拥有的分数。利用if嵌套for。 //Console.Write("请输入你所闯的关数:"); //int a = int.Parse(Console.ReadLine()); //double sum = 0; //if (a > 0 && a < 51) //{ // if (a < 21) // { // for (int i = 1; i <= a; i++) // { // sum += i; // } // } // else if (a < 31) // { // sum = 210; // for (int y = 1; y <= (a - 20); y++) // { // sum += 10; // } // } // else if (a < 41) // { // sum = 310; // for (int j = 1; j <= (a - 30); j++) // { // sum += 20; // } // } // else if (a < 50) // { // sum = 510; // for (int x = 1; x <= (a - 40); x++) // { // sum += 30; // } // } // else // { // sum = 880; // } //} //else //{ // Console.WriteLine("您输入的有误"); //} //Console.WriteLine("您的得分为:"+sum); //12.一个游戏,前20关是每一关自身的分数,1-30关每一关是10分,31-40关,每一关是20分,1-49关,每一关是30分,第50关是100分,输入你现在闯到的关卡数,求你现在拥有的分数。利用for嵌套if。 //Console.Write("请输入你所闯的关数:"); //int a = int.Parse(Console.ReadLine()); //double sum = 0; //if (a > 0 && a < 51) //{ // for (int i = 1; i <= a;i++ ) // { // if(i<=20) // { // sum+=i; // }else if(i<=30) // { // sum += 10; // }else if(i<=40) // { // sum += 20; // } // else if (i <= 49) // { // sum += 30; // } // else // { // sum += 100; // } // } //} //else //{ // Console.WriteLine("您输入的有误"); //} //Console.WriteLine("您的得分为:" + sum); //13.输入月份和日期,输出是今年的第多少天。(2月按照28天计算)利用switch case。 //double [] y=new double[12]{31,28,31,30,31,30,31,31,30,31,30,31}; //Console.Write("请输入日期(例如:2000-01-01 或 2000/01/01):"); //DateTime a = DateTime.Parse(Console.ReadLine()); //double b = 0; //switch (a.Month) //{ // case 1: // b = a.Day; // break; // case 2: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 3: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 4: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 5: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 6: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 7: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 8: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 9: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 10: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // case 11: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; // default: // for (int i = 1; i < a.Month; i++) // { // b += y[i-1]; // } // b += a.Day; // break; //} //Console.WriteLine("今天是今年的第"+b+"天"); //Console.WriteLine("{0}是这一年的第{1}天",a.ToLongDateString(),a.DayOfYear); //14.百鸡百钱:公鸡2文钱一只,母鸡1文钱一只,小鸡半文钱一只,总共只有100文钱,如何在凑够100只鸡的情况下刚好花完100文钱?利用for嵌套+if筛选。 //double g ;//50 //double x ;//200 //double m ;//100 //double f =0; //for (g = 0; g <= 50; g++) //{ // for (m = 0; m <= 100; m++) // { // for (x = 0; x <= 200; x++) // { // if ((g * 2 + m * 1 + x * 0.5) == 100) // { // f++; // Console.WriteLine("这是第"+f+"种方法:公鸡:"+g+"只,母鸡:"+m+"只,小鸡:"+x+"只"); // } // } // } //} //Console.WriteLine("一共有"+f+"种方法"); //15.大马驼2石粮食,中等马驼1石粮食,两头小马驼1石粮食,要用100匹马,驼100石粮食,该如何分配?利用for嵌套+if筛选。 //double d;//50 //double z;//100 //double x;//200 //double f = 0; //for (d = 0; d <= 50; d++) //{ // for (z = 0; z <= 100; z++) // { // for (x = 0; x <= 200; x++) // { // if(d*2+z*1+x*0.5==100) // { // f++; // Console.WriteLine("这是第"+f+"种方法:大马驼:"+d+"匹,中等马驼:"+z+"匹,小马驼:"+x+"匹"); // } // } // } //} //Console.WriteLine("一共有"+f+"种方法"); //16.纸张可以无限次对折,纸张厚度为0.07毫米。问多少次对折至少可以超过8848?利用while。 //double h = 0.00007; //double n = 0; //while (h <= 8848) //{ // n++; // h *= 2; //} //Console.WriteLine("对折"+n+"次"); //17.兔子生兔子。除了第一个月之后的所有月份都可以直接执行。成兔=上个月的成兔加上上个月的小兔。小兔=上个月的幼兔。幼兔=上个月的成兔加上上个月的小兔(即这个月的成兔)利用for嵌套if。 //double c=0; //double x=0; //double y=1; //double sum = 0; //Console.Write("请输入月份:"); //double month=double.Parse(Console.ReadLine()); //for (int i = 1; i <= month; i++) //{ // if (i == 1) // { // Console.WriteLine("本月共有1只幼兔,0只小兔,0只成兔"); // } // else // { // c = c + x; // x = y; // y = c; // } //} //sum = c + x + y; //Console.WriteLine("本月共有兔子:"+sum+"只,其中:幼兔:"+y+"只,小兔:"+x+"只,成兔:"+c+"只"); //18.输入两个时间日期,计算出相差多少天(TotalDays)。 //DateTime time1; //DateTime time2; //DateTime a= DateTime.Now; //Console.Write("请输入第一个日期:"); //time1 = DateTime.Parse(Console.ReadLine()); //Console.Write("请输入第二个日期:"); //time2 = DateTime.Parse(Console.ReadLine()); //Console.WriteLine("第一个日期为:" + time1); //Console.WriteLine("第二个日期为:" + time2); //Console.WriteLine("两日期相差"+(time2-time1).TotalDays+"天"); //19.五个候选班长,20人投票。输入1-5来表示支持哪(个人)最后查看票数,看那个人胜出。不是1~5之内的数视为票作废。利用数组。 //int[]a=new int[5]; //Console.WriteLine("这五个人分别代码为:1号小白,二号小红,三号小黑,四号小黄,五号小绿,投票时请直接输入数字"); //int p; //for (int i = 1; i <= 20; i++) //{ // Console.Write("请第"+i+"个人来投票,请输入你要投票的人的代码:"); // p=int.Parse(Console.ReadLine()); // if (p > 0 && p < 6) // { // switch (p) // { // case 1: // a[0]++; // break; // case 2: // a[1]++; // break; // case 3: // a[2]++; // break; // case 4: // a[3]++; // break; // case 5: // a[4]++; // break; // } // } // else // { // Console.WriteLine("您输入的有误,此票作废"); // } //} //Console.WriteLine("投票完毕,最后得分:小白:"+a[0]+"票,小红:"+a[1]+"票,小黑:"+a[2]+"票,小黄:"+a[3]+"票,小绿:"+a[4]+"票"); //if (a[0] > a[1] && a[0] > a[2] && a[0] > a[3] && a[0] > a[4]) //{ // Console.WriteLine("根据投票结果小白胜出"); //} //else if (a[1] > a[0] && a[1] > a[2] && a[1] > a[3] && a[1] > a[4]) //{ // Console.WriteLine("根据投票结果小红胜出"); //} //else if (a[2] > a[0] && a[2] > a[1] && a[2] > a[3] && a[2] > a[4]) //{ // Console.WriteLine("根据投票结果小黑胜出"); //} //else if (a[3] > a[0] && a[3] > a[1] && a[3] > a[2] && a[3] > a[4]) //{ // Console.WriteLine("根据投票结果小黄胜出"); //} //else if (a[4] > a[0] && a[4] > a[1] && a[4] > a[2] && a[4] > a[3]) //{ // Console.WriteLine("根据投票结果小绿胜出"); //} //else //{ // Console.WriteLine("票数有相同的,请从新选"); //} //20.输入手机号码个数,根据手机号码个数创建数组。做抽奖活动。利用System.Threading.Thread.Sleep(3000);//程序暂停3秒 //Console.Write("请输入手机号码个数:"); //int n = int.Parse(Console.ReadLine()); //string[]t=new string[n]; //int x=0; //object v; //for (int i = 1; i <= n; i++) //{ // Console.Write("请输入第"+i+"个手机号:"); // t[i - 1] = Console.ReadLine(); //} //Console.WriteLine("输入完毕,请按回车键开始抽奖吧!"); //Console.ReadLine(); //for (int j=0;j<=10 ;j++ ) //{ // Random a = new Random(); // x = a.Next(n); // Console.Clear(); // Console.WriteLine(t[x]); // System.Threading.Thread.Sleep(3000); //} //Console.WriteLine("恭喜中奖号码为:" + t[x]); Console.ReadLine(); } } } }
posted @ 2016-03-18 11:16  熊小白  阅读(259)  评论(0编辑  收藏  举报