预期的行为是将名字作为输入,并再次运行while循环,但它只是转到下一行,什么也不做。
#include <iostream>
using namespace std;
int main()
{
int ch,mb;
bool y=true;
char name;
cout<<"Enter 1,2 or 3 : ";
do{
cin>>ch;
switch(ch)
{
case 1:
cout<<" \n\t 1.ENTER CUSTOMER NAME :";
cin>>name;
continue;
case 2:
cout<<" \n\t 2.ENTER MOBILE NUMBER:";
cin>>mb;
continue;
case 3:
y=false;
}
}while(y!=false);
}
它不会 "什么都不做",而是等待下一个输入。因为这就是你告诉它要做的事情!
如果你想得到另一个提示,将 cout<<"Enter 1,2 or 3 : ";
行 里面 的循环。
对了,一个 char
是 一个字节 所以,这并不适合阅读整个客户名称;此外。你应该避免使用 int
电话号码.
使用break;而不是continue;break会把执行移到开关的末端。
编辑:我认为问题是你没有再看到你的提示,所以把它移到你的循环里面。