为什么do / while循环在C语言中无法正常工作?

问题描述 投票:0回答:1
#include <cs50.h>
#include <stdio.h>

int main(void)
{
    int n = get_int("Please input a number between 1 and 8.\n");
    if( n >= 1 && n <= 8 )
    {
        printf( "Thank you for choosing within the boundaries. The number you entered was %i.\n", n );
    }

    do 
    {
        get_int( "Please enter a number that matches the critera.\n" );
    }
    while ( n > 8 || n < 1);
}

我刚开始就立即列出我的代码。请放心,我是新手,并且正在edX上使用CS50来变得更好。当我输入一个“符合条件”的整数(介于1到8之间,包括1和8)时,我的代码将按照其预期的方式工作。同样,当我输入一个超出这些界限的整数时,它的工作原理与预期的一样。但是,在prgram提示我输入另一个整数之后,这一次我在边界内输入了整数,因此代码无法正常工作。不仅要说“谢谢您在边界内进行选择。您输入的数字是%i”,而是说“请输入一个与critera匹配的数字”,即使我在边界内输入了一些内容。

我希望你们能够提供帮助。谢谢。

c loops do-while cs50
1个回答
0
投票
我认为在“做……”这一行中,变量n在获得_....之前丢失了,我不使用cs50.h,但非常重要,并且c也使用变量,希望可以运行代码
© www.soinside.com 2019 - 2024. All rights reserved.