c++中如何輸入在一定范圍內的數組,比如a[10],每個數范圍是一到十?
3 回答

鳳凰求蠱
TA貢獻1825條經驗 獲得超4個贊
無法避免錯誤輸入
但可以在輸入錯誤的時候提示重新輸入
比如
1234567891011 | int a[10], n; n = 0; while (n<10) { cin >> a[n]; if (a[n]>=1 && a[n]<=10) n++; else { cout << "input error, redo\n" ; } } |

呼喚遠方
TA貢獻1856條經驗 獲得超11個贊
#include <iostream>
using namespace std;
int main()
{
int i = 1, s = 1, n;
cout << "輸入n="; cin >> n;
while (n<1 || n>15){ //n的值若不在1-15范圍內將不斷循環輸入
cout << "n的范圍是1-15,請重新輸入n的值\n輸入n=";
cin.clear();
cin.sync();
cin >> n;
}
do
{
s = s*i;
i++;
} while (i <= n);
cout << "n!=" << s << endl;
return 0;
}

PIPIONE
TA貢獻1829條經驗 獲得超9個贊
這么改
cin>>n;
while(1)
{
if(n<1 || n>15)
{cout<<"n的值超出范圍,請重新輸入!"<<endl;
cout<<"輸入n=";
cin>>n;}
else
break;
}
- 3 回答
- 0 關注
- 544 瀏覽
添加回答
舉報
0/150
提交
取消