C 猜谜游戏程序

C 猜谜游戏程序,c,C,我创建了一个简单的猜谜游戏程序。我的问题是,一旦用户猜错了号码,我不知道如何将程序循环回程序的开头。我希望程序继续向用户询问一个数字,直到他答对为止。有人能帮我吗 #include <stdio.h> int main (void) { int value = 58; int guess; printf("Please enter a value: "); scanf("%i", &guess); if (guess == val

我创建了一个简单的猜谜游戏程序。我的问题是,一旦用户猜错了号码,我不知道如何将程序循环回程序的开头。我希望程序继续向用户询问一个数字,直到他答对为止。有人能帮我吗

#include <stdio.h>

int main (void) {
    int value = 58;
    int guess;

    printf("Please enter a value: ");
    scanf("%i", &guess);

    if (guess == value) {
        printf("Congratulations, you guessed the right value");
    }
    else if (guess > value) {
        printf("That value is too high. Please guess again: ");
        scanf("%i", &guess);
    }
    else if (guess < value) {
        printf("That value is too low. Please guess again: ");
        scanf("%i", &guess);
    }

    return 0;
}
#包括
内部主(空){
整数值=58;
智力猜测;
printf(“请输入一个值:”);
scanf(“%i”和“&guess”);
如果(猜测==值){
printf(“祝贺您,您猜对了值”);
}
else if(猜测>值){
printf(“该值太高。请再次猜测:”;
scanf(“%i”和“&guess”);
}
else if(猜测<值){
printf(“该值太低。请再次猜测:”;
scanf(“%i”和“&guess”);
}
返回0;
}

使用
do{/*您的代码*/}同时(条件)


当然,如果人们输入Y而不是Y,您应该修复它,但关键是您需要将程序包装在一个do while循环(它将至少执行一次)或一个while循环(在您输入条件之前获取初始值)中,并带有一个初始启动条件。

使用
do{/*您的代码*/}while(条件)


当然,如果人们输入Y而不是Y,您应该修复它,但关键是您需要将程序包装在一个do-while循环(它将至少执行一次)或一个while循环(在输入条件之前获取初始值)中,并带有一个初始启动条件。

C语法中有许多循环结构。它们是:

  • for()
  • while()
  • do/while()

这两种方法中的任何一种都应该很容易在您使用的任何参考资料中查找,并且都可以用来解决这个问题。

在C语法中有许多循环结构。它们是:

  • for()
  • while()
  • do/while()

这两种方法中的任何一种都应该很容易在您正在使用的任何参考资料中查找,并且都可以用来解决此问题。

这看起来是
while
循环和
break
语句的好地方。您可以像这样使用
while
循环无限循环:

while (true) {
    /* ... /*
}
然后,一旦某个条件变为真并希望停止循环,您可以使用
break
语句退出循环:

while (true) {
     /* ... */

     if (condition) break;

     /* ... */
}
这样,当用户正确猜测时,您就可以将
从循环中打断

或者,您可以使用
do。。。而其条件检查循环是否应退出的循环:

bool isDone = false;
do {
    /* ... */

    if (condition) isDone = true;

    /* ... */
} while (!isDone);

希望这有帮助

这看起来是
while
循环和
break
语句的好地方。您可以像这样使用
while
循环无限循环:

while (true) {
    /* ... /*
}
然后,一旦某个条件变为真并希望停止循环,您可以使用
break
语句退出循环:

while (true) {
     /* ... */

     if (condition) break;

     /* ... */
}
这样,当用户正确猜测时,您就可以将
从循环中打断

或者,您可以使用
do。。。而其条件检查循环是否应退出的循环:

bool isDone = false;
do {
    /* ... */

    if (condition) isDone = true;

    /* ... */
} while (!isDone);
希望这有帮助

试试这个:

printf("Please enter a value: ");
do {
    scanf("%i", &guess);

    if (guess == value) {
        printf("Congratulations, you guessed the right value");
    }
    else if (guess > value) {
        printf("That value is too high. Please guess again: ");
    }
    else if (guess < value) {
        printf("That value is too low. Please guess again: ");
} while (guess != value);
printf(“请输入一个值:”);
做{
scanf(“%i”和“&guess”);
如果(猜测==值){
printf(“祝贺您,您猜对了值”);
    }
else if(猜测>值){
printf(“该值太高。请再次猜测:”;
    }
else if(猜测<值){
printf(“该值太低。请再次猜测:”;
}while(猜测!=值);
试试这个:

printf("Please enter a value: ");
do {
    scanf("%i", &guess);

    if (guess == value) {
        printf("Congratulations, you guessed the right value");
    }
    else if (guess > value) {
        printf("That value is too high. Please guess again: ");
    }
    else if (guess < value) {
        printf("That value is too low. Please guess again: ");
} while (guess != value);
printf(“请输入一个值:”);
做{
scanf(“%i”和“&guess”);
如果(猜测==值){
printf(“祝贺您,您猜对了值”);
    }
else if(猜测>值){
printf(“该值太高。请再次猜测:”;
    }
else if(猜测<值){
printf(“该值太低。请再次猜测:”;
}while(猜测!=值);

您的预期计划是

#include <stdio.h>

void main (void) {
    int value = 58;
    int guess;

    do
    {
        printf("please enter a value : ");
        scanf("%i", &guess);
        if(guess > value)
            printf("this value is too big, ");
        else if(guess < value)
            printf("this value is too small, ");
    }while(guess != value);

    printf("Congradulation You Guessed The Right Number. \n");
}
#包括
真空总管(真空){
整数值=58;
智力猜测;
做
{
printf(“请输入一个值:”);
scanf(“%i”和“&guess”);
如果(猜测>值)
printf(“此值太大,”);
else if(猜测<值)
printf(“该值太小,”);
}while(猜测!=值);
printf(“祝贺您猜对了数字。\n”);
}

您的预期计划是

#include <stdio.h>

void main (void) {
    int value = 58;
    int guess;

    do
    {
        printf("please enter a value : ");
        scanf("%i", &guess);
        if(guess > value)
            printf("this value is too big, ");
        else if(guess < value)
            printf("this value is too small, ");
    }while(guess != value);

    printf("Congradulation You Guessed The Right Number. \n");
}
#包括
真空总管(真空){
整数值=58;
智力猜测;
做
{
printf(“请输入一个值:”);
scanf(“%i”和“&guess”);
如果(猜测>值)
printf(“此值太大,”);
else if(猜测<值)
printf(“该值太小,”);
}while(猜测!=值);
printf(“祝贺您猜对了数字。\n”);
}

不要忘记
goto
&
setjmp()
!“
goto
&
setjmp()
”&recursion…在C中,
main
可以递归调用:)不要忘记
goto
&
setjmp()
!“
goto
&
setjmp()
”&recursion…在C中,
main
可以递归调用:)Downvoter-你能评论一下这个答案有什么问题吗?如果可能的话,我很乐意改进它。另外请注意,在使用
false
/
true
时,你必须
。这很清楚。Downvoter-你能评论一下有什么问题吗这个答案错了吗?如果可能的话,我很想改进一下。还要注意,在使用
false
/
true
时,你必须
#包括
。这是最干净的。我认为你需要一本好书:我认为你需要一本好书: