为什么我的程序持续运行而不停止?
why my program running continously and not stoping?
我正在尝试制作一个模板,这是我的课堂作业。 我在 do while 循环中使用了一个 switch 语句,而条件是如果输入变量不等于 16,您应该终止程序
我已经在每种情况下都使用了中断语句,但它不起作用
#include <iostream>
using namespace std;
int main()
{
int op;
cout << "Please enter choice between 1 to 15 For Different Operations "
<< endl;
cout << "1. Create List(create a new list(presumably empty))" << endl;
cout << "2. Insertion" << endl;
cout << "3. Deletion" << endl;
cout << "4. Update(replace the element)" << endl;
cout << "5. Start" << endl;
cout << "6. Next" << endl;
cout << "7. Back" << endl;
cout << "8. Tail" << endl;
cout << "9. Find" << endl;
cout << "10. Copy" << endl;
cout << "11. Get(display current index and element)" << endl;
cout << "12. Size / length" << endl;
cout << "13. Display list" << endl;
cout << "14. De - allocate list" << endl;
cout << "15. Exit" << endl;
cin >> op;
do {
switch (op) {
case 1:
cout << "Creating the List" << endl;
break;
case 2:
cout << "inserting... " << endl;
break;
case 3:
cout << "Deleting... " << endl;
break;
case 4:
cout << "updating... " << endl;
break;
case 5:
cout << "starting... " << endl;
break;
case 6:
cout << "next... " << endl;
break;
case 7:
cout << "back... " << endl;
break;
case 8:
cout << "Tail... " << endl;
break;
case 9:
cout << "Find... " << endl;
break;
case 10:
cout << "Copying... " << endl;
break;
case 11:
cout << "Getting... " << endl;
break;
case 12:
cout << "Size... " << endl;
break;
case 13:
cout << "Display... " << endl;
break;
case 14:
cout << "Deallocate... " << endl;
break;
case 15:
terminate;
break;
default:
cout << "Please enter the correct choice " << endl;
break;
}
} while (op != 16);
return 0;
}
我希望用户所做的每个选择中的 cout 输出,然后停止接受输入
来自您的原始代码
cin >> op;
do {
switch (op)
因此,您在循环外从CIN读取并且再也不会读取,重新排序以使您在每次循环传递时读取将再次询问您所需的操作
do {
cin >> op;
switch (op)
另外请注意,中断不会中断循环,它只是从开关中断。如果没有中断,下一个情况的指令也将在交换机中执行。
如果你想在某些情况下从循环中中断,你需要在 switch 语句之外添加一个中断,你可以使用变量来"记住"是否应该离开循环。
但是,由于键入的指令中有退出条件,为什么不使循环退出
} while (op != 15);
这似乎是有道理的,因为
cout << "15. Exit" << endl;
线。
相关文章:
- 为什么我的代码在指针方面停止运行?
- 如何正确停止运行非循环QThread?
- 程序在 Visual Studio 中停止运行时终止
- 程序停止运行,但未检测到错误
- 返回不停止函数,递归函数问题?(编程练习,动态规划,Levenshtein 回溯)
- 如何停止运行该程序?
- 在编译时而不是运行时创建一个由两个字节组成的值
- 回文递归不停止
- 我需要线程函数在不停止实际程序的情况下,每2秒打印一次随机数
- VisualStudio 2015 - 只计算命中,不停止
- Windeployqt不会运行,"Access is denied."
- 无法构建 quazip。MOC 编译器不会运行。命令行未找到相关类
- 功能不停止
- 为什么我的程序持续运行而不停止?
- OpenCL仅在循环呼叫时停止运行
- 未经授权的私有类成员访问会产生编译时错误而不是运行时错误?
- C - 如果语句问题.代码将不会运行其他,否则
- 在运行时动态更新二进制文件(可执行文件)而不停止的任何类型的方法
- 不停止While循环运行而未获得预期结果
- RNA到蛋白质。程序编译但不会停止运行