1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Threading.Tasks; 6 7 namespace 方法0004 8 { 9 class Program 10 { 11 static void Main(string[] args) 12 { 13 //提示用户输入两个数字 计算这两个数字之间所有整数的和 14 //用户只能输入数字 15 //计算两个数字之间的和 16 //要求第一个数字必须比第二个数字小 否则就重新输入 17 Console.WriteLine("请输入第一个数字:"); 18 String strNumOne = Console.ReadLine(); 19 int numOne = GetNum(strNumOne); 20 Console.WriteLine("请输入第二个数字:"); 21 String strNumTwo = Console.ReadLine(); 22 int numTwo = GetNum(strNumTwo); 23 //判断第一个数字小于第二个数字 24 JudgeNum(ref numOne, ref numTwo); 25 //求和 26 int sum = GetSum(numOne,numTwo); 27 Console.WriteLine(sum); 28 Console.ReadKey(); 29 } 30 31 32 public static int GetNum(String s) 33 { 34 while (true) 35 { 36 try 37 { 38 int num = Convert.ToInt32(s); 39 return num; 40 } 41 catch 42 { 43 Console.WriteLine("输入错误,请重新输入!!!"); 44 s = Console.ReadLine(); //易错点 45 } 46 } 47 } 48 public static void JudgeNum(ref int n1, ref int n2) 49 { 50 while (true) 51 { 52 if (n1 < n2) 53 { 54 return; //符合题意,跳出循环 55 } 56 else 57 { 58 Console.WriteLine("第一个数字不能大于或者等于第二个数字,请重新输入第一个数字:"); 59 string s1 = Console.ReadLine(); 60 n1 = GetNum(s1); //调用GetNum方法 重新为n1赋值 61 string s2 = Console.ReadLine(); 62 n2 = GetNum(s2); //调用GetNum方法 重新为n2赋值 63 } 64 } 65 66 } 67 public static int GetSum(int n1,int n2) 68 { 69 int sum = 0; 70 for (int i = n1; i <=n2 ; i++) 71 { 72 sum += i; 73 } 74 return sum; 75 } 76 } 77 }