2017-10-11 54 views
2

我有这个代码,我输入一个名称,然后一个整数。然后应用程序将根据指定的整数重复输入的名称。我遇到的问题是,我只希望用户能够重复名称最多10次,最小为1.这是我迄今为止的。如何强制控制台只接受一定范围内的数字?

Console.Write("PLEASE ENTER YOUR FIRST AND LAST NAME: "); 
string Name = Console.ReadLine(); 

Console.Write("Enter the number of times you wish for me to repeat your name, " + Name); 
int number = Int32.Parse(Console.ReadLine()); 

for (int i = 0; i < number; i++)   
    Console.WriteLine(""+ Name); 
Console.ReadKey(); 

编辑:如果有人认为做什么我有一个简单的方法,我会很乐意给点建议!

+0

您可以添加您尝试过的任何代码以执行期望的限制吗? – mrtig

回答

1

您需要过滤和验证包裹的ReadLine()如果输入数目是最小的1,并且最大的10 ,然后打印名称。你可以这样做:

Console.Write("PLEASE ENTER YOUR FIRST AND LAST NAME: "); 
     string Name = Console.ReadLine(); 

     Console.Write("Enter the number of times you wish for me to repeat your name, " + Name); 

     int number = 0; 

     do 
     { 
      Int32.TryParse(Console.ReadLine(), out number); 
      if (number > 10 || number < 1) 
       Console.WriteLine("Please input numbers between 1 to 10"); 

     } while (number > 10 || number < 1); 

      for (int i = 0; i < number; i++) 
       Console.WriteLine("" + Name); 
     Console.ReadKey(); 

我正在做一个do-while循环这里。除非满足while循环,否则它将持续验证数字是否在指定的范围内,否则将退出并打印名称。

0

你可以在while语句

实施例是

int number = -1; 
while(number < 1 || number > 10) 
{ 
     //Input code 
} 
//for loop goes under here 
1
static void Main(string[] args) 
    { 
     Console.Write("PLEASE ENTER YOUR FIRST AND LAST NAME: "); 
     string Name = Console.ReadLine(); 

     Console.Write("Enter the number of times you wish for me to repeat your name"); 
     var input = Console.ReadLine(); 
     int number = -1; 
     while (!int.TryParse(input, out number)) { 
      Console.WriteLine("Incorrect Value"); 
      Console.Write("Enter the number of times you wish for me to repeat your name"); 
      input = Console.ReadLine(); 
     } 

     for (int i = 0; i < number; i++) 
     { 
      Console.WriteLine("" + Name); 
      if (i == 9) 
      { 
       Console.WriteLine("End Program"); 
       break; 
      } 
     } 

     Console.ReadKey(); 

    } 
相关问题