昔日の邂逅 发表于 2017-1-7 22:07:49

C++ 字符串问题

#include <iostream>
using namespace std;
int main()
{
        int H;
        char ch;
        nember0:
        {
                cout<<"1.开始游戏。\n2.查看游戏规则。\n3.设计游戏难度。\n4.退出游戏。\n请输入1、2、3、4选择你的选项:\n";
                cin>>ch;
                while (ch!='\0')
                {
                        if (ch=='2')
                        {cout<<"游戏规则:\n省略500字...\n";
                        goto nember0;}
                        else if (ch=='3')
                        {cout<<"请选择难度:\n1.基本难度。\n2.复合难度。\n\n";
                        goto nember0;}
                        else if(ch=='4') goto exit;
                        else if(ch=='1') goto end;
                        else
                        {cout<<"输入有误,请重新输入。\n";
                        goto nember0;}
        }
        end:
        exit: return 0;
}
新手提问,这是我打的半成品,问题如图:
我想只输出一次“输入有误,请重新输入。”
请高人指点!

lzgw 发表于 2017-1-7 22:30:13

本帖最后由 lzgw 于 2017-1-7 22:32 编辑

char 型的ch 只能读一个字符,你输入两个就读2次了

昔日の邂逅 发表于 2017-1-7 22:35:40

lzgw 发表于 2017-1-7 22:30
char 型的ch 只能读一个字符,你输入两个就读2次了

那怎么改?

lzgw 发表于 2017-1-8 09:42:00

昔日の邂逅 发表于 2017-1-7 22:35
那怎么改?

c是在读入后面加fflush(stdin);清空缓冲区,C++我不知道你查查看
页: [1]
查看完整版本: C++ 字符串问题