回复 10楼 刹影圣星
嗯,我看下,之前前面2个办法我都去试了,不过只要输入非数字字符,都会出现异常中断,刚刚wangnannan版主又更新了新的,我还没试,你的也是刚看到,我理解下,去试一下。
do { Console.WriteLine("请输入您现在的存款:"); temp = Convert.ToString(Console.ReadLine()); char[] charArry = temp.ToCharArray(); bool[] isNumber = new bool[charArry.Length]; for (int a = 0; a < charArry.Length; a++) { for (int b = 9; b > -1; b--) { if ((Convert.ToInt32(charArry[a].ToString())) == b) isNumber[a] = true; } } for (int a = 0; a < isNumber.Length; a++) { rightInput = rightInput & isNumber[a]; } } while (rightInput == false);我现在是把“rightInput”的初始值设成了“true”,并创建了一个布尔数组,用来存输入的每一个字符是否为数字的结果,然后将每一个结果与“rightInput”进行与运算,最终根据“rightInput”是否为真来进行选择接来下的操作,可是还是出现了异常,我又迷惑了,=_=
inPut1: try { Console.WriteLine("请输入您现在的存款:"); balance = double.Parse(Console.ReadLine()); } catch { goto inPut1; }用前面的jedypjd的办法已经实现了我要的效果,你的这个办法也可以,不过我还是想知道有没有办法把我那段错误的代码修改到正确,