C确定数字是否在可接受的范围内

发布于 2025-02-08 04:54:46 字数 448 浏览 3 评论 0原文

我正在尝试测试从SCANF收到的数字是否在可接受的范围之间,但是当我输入50时,其他范围是触发的,它将打印“输入的数字无效”

 for (int i = 1; i <= 20; ++i) {
    
    bool flag = true; 
    
    while (flag == true) {
        int x  = scanf("%d", &uniqueNumber);
        
        if ( (x > 9) && (x < 101) ) {
            uniqueArray[i] = x;
            flag =false;
        } else {
            printf("The number entered is not  valid");
        }
    }
}

I am trying to test whether a number received from scanf is between an acceptable range but the else is triggering when it shouldn't be, if I enter 50, it will print "the number entered is not valid"

 for (int i = 1; i <= 20; ++i) {
    
    bool flag = true; 
    
    while (flag == true) {
        int x  = scanf("%d", &uniqueNumber);
        
        if ( (x > 9) && (x < 101) ) {
            uniqueArray[i] = x;
            flag =false;
        } else {
            printf("The number entered is not  valid");
        }
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苯莒 2025-02-15 04:54:46

我想此代码对您有用:

for (int i = 1; i <= 20; ++i) {
    bool flag = true;

    while (flag) {
        scanf("%d", &uniqueNumber);

        if (uniqueNumber > 9 && uniqueNumber < 101) {
            uniqueArray[i] = uniqueNumber;
            flag = false;
        } else {
            printf("The number entered is not valid\n");
        }
    }
}

I suppose this code would work for you:

for (int i = 1; i <= 20; ++i) {
    bool flag = true;

    while (flag) {
        scanf("%d", &uniqueNumber);

        if (uniqueNumber > 9 && uniqueNumber < 101) {
            uniqueArray[i] = uniqueNumber;
            flag = false;
        } else {
            printf("The number entered is not valid\n");
        }
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文