using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace calculator { class Program { private static int right = 0; //统计做对多少道题 private static int fault = 0; //统计做错多少道题 private static int question = 0; //统计做错多少道题 static void Main(string[] args) { char type = ‘ ‘; Console.WriteLine("请选择要进行那种运算:"+ "\n"+"输入+ 号表示选择加法"+ "\n"+"输入- 号表示选择减法"+ "\n"+"输入 * 号表示选择乘法"+ "\n"+"输入 / 号表示选择除法"+ "\n"+"输入 e 表示结束程序"); //输入运算符 char[] chars = Console.ReadLine().ToCharArray(); type = chars[0]; //字符串数组,第0个,就是用户输入的运算符号 while (type != ‘e‘) { Random rand = new Random(); int a = rand.Next(1, 11); int b = rand.Next(1, 11); int n = rand.Next(0, 5); int sum, answer; switch (type) { case (‘+‘): #region 加法计算 sum = a + b; question++; Console.WriteLine("----------------------------------------------");//分割线 Console.WriteLine("问题:第" + question + "题"); Console.WriteLine("加法运算:" + a + " + " + b + " = " + "____"); //输入答案 Console.WriteLine("请输入你的答案:"); string answerStr1 = Console.ReadLine(); if (answerStr1 == "e") { Console.WriteLine("您共答对" + right + "道题,答错" + fault + "道题"); Console.ReadKey(); return; } answer = Convert.ToInt32(answerStr1); if (answer == sum)//回答的结果==程序计算的结果 { right++; IsRight(1); } else { fault++; IsRight(0); } #endregion break; case (‘-‘): #region 减法计算 sum = a - n; question++; Console.WriteLine("----------------------------------------------");//分割线 Console.WriteLine("问题:第" + question + "题"); Console.WriteLine("减法运算:" + a + " - " + n + " = " + "____"); //输入答案 Console.WriteLine("请输入你的答案:"); string answerStr2 = Console.ReadLine(); if (answerStr2 == "e") { Console.WriteLine("您共答对" + right + "道题,答错" + fault + "道题"); Console.ReadKey(); return; } answer = Convert.ToInt32(answerStr2); if (answer == sum)//回答的结果==程序计算的结果 { right++; IsRight(1); } else { fault++; IsRight(0); } #endregion break; case (‘*‘): #region 乘法计算 sum = a * b; question++; Console.WriteLine("----------------------------------------------");//分割线 Console.WriteLine("问题:第" + question + "题"); Console.WriteLine("乘法运算:" + a + " * " + b + " = " + "____"); //输入答案 Console.WriteLine("请输入你的答案:"); string answerStr3 = Console.ReadLine(); if (answerStr3 == "e") { Console.WriteLine("您共答对" + right + "道题,答错" + fault + "道题"); Console.ReadKey(); return; } answer = Convert.ToInt32(answerStr3); if (answer == sum)//回答的结果==程序计算的结果 { right++; IsRight(1); } else { fault++; IsRight(0); } #endregion break; case (‘/‘): #region 除法计算 sum = a / b; question++; Console.WriteLine("----------------------------------------------");//分割线 Console.WriteLine("问题:第" + question + "题"); Console.WriteLine("除法运算:" + a + " / " + b + " = " + "____"); //输入答案 Console.WriteLine("请输入你的答案:"); string answerStr4= Console.ReadLine(); if (answerStr4 == "e") { Console.WriteLine("您共答对" + right + "道题,答错" + fault + "道题"); Console.ReadKey(); return; } answer = Convert.ToInt32(answerStr4); if (answer == sum)//回答的结果==程序计算的结果 { right++; IsRight(1); } else { fault++; IsRight(0); } #endregion break; default: Console.WriteLine("输入的运算符号非法!"); Console.ReadKey(); return; //方法返回,不再向下执行 } } Console.WriteLine("您共答对" + right + "道题,答错" + fault + "道题"); Console.ReadKey(); } //判断对错方法 static void IsRight(int rightOrfault) { if (rightOrfault == 1) Console.WriteLine("回答正确!"); else if (rightOrfault == 0) Console.WriteLine("回答错误!"); } } } }
要求
编写一个能对0-10之间的证书进行四则运算的“软件”程序能接收用户的答案并进行判断对错,程序结束时统计计算结果情况。
补充说明:0--10之间的数是随机产生的
用户可以用键盘输入来选择四则运算中的一种,用户输入一个字符程序结束,并显示运算结果,比如输入e程序结束并显示结果
若用户输入错误则给出提示并结束程序,用户可以选择运算结果。
思路分析:
在上次的基础之上,我也有了想法。进行了查找资料,询问别人,和伙伴讨论,尽量地去完善。也加上了用户可以选择运算,并且用户输入错误时将给出提示。
总结:
这次的完善、过程,我感觉收获还是有的。但还是心有余而力不足,对于那个计时器的功能我也有了思路,可是我尝试了多次却无功而返。不过我还会继续努力,去完善,多讨论,多问多练,确实,问题是从傻问题开始,傻问题得到了解决才会更加深刻。
计应143:张梅芝
时间: 2024-10-11 11:27:52