c++的while循环问题
c++ do while loop issues
我有下面的if语句来确保日期输入是有效的。但是,如果有人两次输入无效的日期,它就会保留该值。在继续前进之前,我如何确保日期是有效的?while循环?
cin>>date.day;
if((date.day>31) || (date.month<1))
{
cout <<"Please input a valid day."<< endl;
date.day = 0;
cin>>date.day;
}
使用do
while
结构:
do {
cout <<"Please input a valid day."<< endl;
date.day = 0;
cin>>date.day;
if (cin.fail()) {
cin.clear();
cin.ignore(1024, 'n');
}
} while(cin.fail() || date.day > 31 || date.day < 1);
您正在寻找的是while
循环:
cin>>date.day;
while((date.day>31) || (date.month<1))
{
cout <<"Please input a valid day."<< endl;
date.day = 0;
cin>>date.day;
}
相关文章:
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 在java中解决这段代码时面临循环中的问题
- 当调用switch语句中的函数时(即使函数不包含循环),似乎是永不结束的循环的问题
- 在 for 循环中查找问题时遇到困难
- 嵌套for循环C++的问题(初学者)
- 退出简单while循环时出现问题
- 循环无限运行C++解决骑士之旅问题
- Visual Studio 2017循环自动向量化问题
- 我试图制作一个程序,要求用户输入问题和答案,但程序循环不正确
- 嵌套While循环不起作用(C++问题)
- 使用 GMP 的 while 循环出现问题
- 遇到此问题时遇到困难:允许用户输入数组的值并使用 for,而循环也输出输入的最大数字
- OpenMP for 循环并行性问题
- 这个返回元素位置的基于循环的函数有什么问题?
- 为什么循环会导致指针出现问题?
- 使用基于范围的循环迭代矢量时出现问题
- 在 c++ 中循环遍历数组时遇到问题
- 运行无限循环的最小二叉树问题
- 在C++中循环访问自定义结构列表的小问题
- 在 for 循环中更新两个变量时遇到问题C++