【发布时间】:2020-05-26 09:12:28
【问题描述】:
我正在尝试这样做: 如果该值大于 50 或小于 -50,或者不是整数,则再次输入 cin 值(直到它有效)
for (size_t i = 0; i < cities; i++)
{
for (size_t j = 0; j < days; j++)
{
cout << "temperature(" << i + 1 << ',' << j + 1 << ") = ";
cin >> *(temperatures + i * days + j);
while (!(*(temperatures + i * days + j) > 50 && *(temperatures + i * days + j) < -50))
{
cin.clear();
cin.ignore();
cout << "temperature(" << i + 1 << ',' << j + 1 << ") = ";
cin >> *(temperatures + i * days + j);
}
}
如果我写一个大于 50 或小于 -50 的数字,它会起作用。
但是如果我写例如:
temperature(1,1) = covid
比下一行:
temperature(1,1) = temperature(1,1) = temperature(1,1) = temperature(1,1) = temperature(1,1) =
我该如何解决这个问题?
【问题讨论】:
标签: c++ validation input