0

我正在用 C 编写一个游戏代码,其中涉及显示用户输入的时间间隔的数字。

srand ( time(NULL) ); //this avoids generating the same random number everytime
start:
    mySleep(userdelay);
    printf("\n\n\a\t%d",rand()%90); //prints random numbers with the time delay entered by the user.
goto start;

所以我只想知道如何使用“按 1 暂停”之类的用户输入暂停此循环,并使用“按 2 恢复”之类的用户输入恢复相同的循环。

提前谢谢!

4

1 回答 1

2

我不确定这可能是最好的方法,但它可能是一种工作方式。尝试在命令控制台中使用 while 循环:

int main(){
    int i;
    scanf("%d",&i)
    switch(i){
        case 1: while(i != 2){
                    sleep(1); //or define duration by a variable if time should be "dynamic"
                    scanf("%d",&i);
                    break;
                }
    }
}

我希望你对这个想法有所了解。

编辑:

如果您希望用户在“退出键”之前输入数据,那么 while 循环要比 goto 好得多。如果你不熟悉switch(){}我建议你看看这里

于 2012-06-13T13:06:38.953 回答