Проверка на ввод на примере массива, используя цикл wile, методы cin.clear() И cin.get() [cut]
[image=http://stud.ashcherbakov.ru/uploads/pages/35/mini/2015-04-0413h2103.jpg 2015-04-0413h21_03.jpg]http://stud.ashcherbakov.ru/uploads/pages/35/2015-04-0413h21_03.jpg[/image]
// Заполним массив
for ( int i = 0; i < 10; i++) //строго, т.к. всего 10 элементов, нумерация же идёт с нулевого эл-та массива (0-9)
{
cout << "Введите значение " << i << " элемента массива: \t" ; // ввод символа
while (!(cin >> A[i])) // пока ввод не удался
{
cin.clear(); // очищаем поток
while (cin.get() != '\n'); // пока пользователь не введёт символ, который система может распознать && который не является переносом строки
cout << "Введите значение " << i << " элемента массива: \t" ;
}
}