限制数组中的用户输入

时间:2014-11-11 18:23:47

标签: c++ arrays validation

我正在进行一项练习,我需要用户输入25个值,所有值都在10到60之间。 我想验证这些值是否在10到60之间。

void main()    
{   
    int len[25], i;    
    for (i = 0; i < 25; i++)
    {
        cout << "Please enter length: ";
        do
        {    
            cin >> len[i];          
        } while (len[i] >= 10 && len[i] <=60);              
    }       
}

这就是我所拥有的,但在我看来,用户不会限制在10到60之间。因为当我输入一个大于60的值时,稍后尝试输出,我看它存储在len [i]中。 关于如何解决这个问题的任何想法?对不起,我有点像诺贝尔。

谢谢!

1 个答案:

答案 0 :(得分:0)

这就是你在这里所做的事情

cin >> len[i];

您可以选择

int n;
while(cin>>n)
{ 
 if(n<10 || n>60) {
  std::cerr << "value out of range" << std::endl;
  break; // ore may be continue ?
 }
 len[i]=n;
}