1、编写一段程序,运行时向用户提问“你考了多少分?(0~100)”,接受输入后判断其等级并显示出来。判断依据如下:等级={优 (90~100分);良 (80~89分);中 (60~69分);差 (0~59分);}
尼玛,学了后面忘了前面,
方法的使用上纠结了十几分钟才想起来怎么弄,判断条件又搞了十几分钟才转明白。是不是忒笨了。
最后想把代码写得结实一些,用try...catch结果搞了我一个多小时,总算是看起来貌似没有啥问题了。
下面贴上改来改去最终完成的代码:
1 static void Main(string[] args) 2 { 3 Console.WriteLine("你考了多少分?(0~100)"); 4 while (true) 5 { 6 try 7 { 8 int score = Convert.ToInt32(Console.ReadLine()); 9 string str = Judge(score);10 Console.WriteLine(str);11 break;12 }13 catch14 {15 Console.WriteLine("请输入0-100的整数");16 //Console.ReadLine();17 }18 }19 Console.ReadKey();20 21 }22 ///23 /// 判断用户输入的分数属于哪个等级24 /// 25 ///26 static string Judge(int score)27 {28 29 while (true)30 {31 try32 {33 if (score >= 90 && score <= 100)34 {35 return "优";36 break;37 }38 else if (score >= 80 && score < 90)39 {40 return "良";41 break;42 }43 else if (score >= 70 && score < 80)44 {45 return "中";46 break;47 }48 else if (score >= 60 && score < 70)49 {50 return "60分万岁,多一分浪费";51 break;52 }53 else if (score >= 0 && score < 60)54 {55 return "差";56 break;57 }58 else//除去0-100的数字59 {60 Console.WriteLine("输入的分数有误,请重新输入");61 //重新用参数接收用户输入的内容,以保证能够继续判断等级62 score = Convert.ToInt32(Console.ReadLine());63 }//else64 }//try65 catch66 {67 //Console.WriteLine("输入的分数有误,请重新输入"); 68 }69 }//while70 }//Judge
方法的书写语法忘了一干净,有个疑问,必须写static么,不写的话是什么东东?