即使我尝试递减 t,While 循环也没有终止
The While loop is not terminating even i tried decrementing t
解决方案的问题是第一行将包含输入的总编号,下一行将采用三个整数,然后我们必须根据输入计算结果。所以我的解决方案的问题是 While 循环没有终止。
我已经多次检查代码,并认为这是因为条件语句和 if-else --t 语句没有被执行而发生这种情况。那么,我应该做哪些修改才能使程序在t输入后终止。
#include<iostream>
using namespace std;
int main()
{
int t{0};
cin>>t;
while(t)
{
double h{0},c{0},t(0);
cin>>h>>c>>t;
if(h>50 and c<0.7 and t>5600)
cout<<"10n";
else if(h>50 and c<0.7)
cout<<"9n";
else if(c<0.7 and t>5600)
cout<<"8n";
else if(h>50 and t>5600)
cout<<"7n";
else if(h>50 or c<0.7 or t>5600)
cout<<"6n";
else
cout<<"5n";
--t;
}
return 0;
}
我希望程序在 t 输入后终止,但它没有发生。
在循环之外,你有
int t{0};
在循环中,您拥有
double h{0},c{0},t(0);
你有两个不同且独特的变量t
它们相互遮蔽。在循环内部,当你执行--t
时,你会递减循环内的变量,而不是你用于循环条件的变量。
您可以通过对变量使用描述性名称而不是简短的单字母名称来解决此问题。
相关文章:
- 我正在使用嵌套的while循环来解析具有多行的文本文件,但由于某种原因,它只通过第一行,我不知道为什么
- while循环中while循环的时间复杂度是多少
- 在while循环中输入带有std::cin的字符串后,控制台会输出大量胡言乱语
- 擦除while循环中迭代的元素
- 为什么我不能在 while 循环中创建线程?
- 退出简单while循环时出现问题
- 如果条件为TRUE(最佳方式?),则在do while循环中后置增量
- 即使没有满足他们的条件,我也无法通过一些 do-while 循环
- 嵌套While循环不起作用(C++问题)
- 如何通过替换顺序代码的while循环来添加OpenMP for循环
- 使用 GMP 的 while 循环出现问题
- 程序以使用 C++ 中的 while 循环查找一组数字的最小值
- 为什么在 while 循环中返回表达式不起作用
- 如何使用 do while 循环确定最高值和最低值
- 如何读取单个字符并在输入两个字符序列时输出? 使用 while 循环和C++
- 用于在 C++ 中使用 while 循环查找下一个素数的简单函数
- OpenCV QT,显示视频的帧(不使用while循环)
- 输入循环 while 函数
- c++中的循环(while)
- 为什么这段代码没有循环(while)