因为你将return写入了循环体中,所以第一次执行到这里的时候函数就直接返回了。
跳过本次循环应该用continue,跳出循环体用break。
自己试着写了一个:
- static int Func(int num1, int num2)
- {
- int num = 0;
- do
- {
- if (!int.TryParse(Console.ReadLine(), out num))
- {
- Console.WriteLine("只能输入{0}或{1}!", num1, num2);
- continue;
- }
- if (num != num1 && num != num2)
- {
- Console.WriteLine("只能输入{0}或{1}!", num1, num2);
- }
- } while (num != num1 && num != num2);
- return num;
- }
复制代码 |