【问题标题】:How to add limits on inputs of multiple integers?如何对多个整数的输入添加限制?
【发布时间】:2016-05-31 05:47:08
【问题描述】:

我想对 >=40 和

#include<stdio.h>

int main()
{
    int s1, s2, s3, s4, s5, avg;
    printf("\n Enter your Subject Numbers:");
    scanf("%d%d%d%d%d", &s1, &s2, &s3, &s4, &s5);

    avg = (s1+s2+s3+s4+s5)/5;
    if (avg>=80)
    {
        printf("\n Your Grade is : A+");
    }
    else if (avg>=70)
    {
        printf("\n Your Grade is : A ");
    }
    else if (avg>=60)
    {   
        printf("\n Your Grade is : A- ");
    }
    else if (avg>=50)
    {
        printf("\n Your Grade is : B ");
    }
    else if (avg>=40)
    {
        printf("\n Your Grade is : C ");
    }
    else if (avg<40)
    {
        printf("\n Your Grade is : F ");
    }
    return 0;
}

【问题讨论】:

  • 欢迎来到 Stack Overflow!我已经稍微编辑了你的问题。有人否决了它,可能是因为这是一个相当基本的问题。在 Stack Overflow 上询问时,如果您展示您尝试过的内容,这会有所帮助。使用以下基本格式可以帮助您:“我尝试过......,我期待......,但发生的事情是......”。你在这里表现得越努力,人们就会越积极。

标签: variables if-statement integer


【解决方案1】:

这其实很简单。你需要一个额外的if 语句围绕你的代码:

if (avg >= 40 && avg <= 100 )
{
    /* Your code here */
}
else
{
    printf("Invalid input.");
}

还有其他一些方法,例如在顶部放置一个单独的if (avg &gt;= 100),在底部放置一个额外的else。但是你必须重复打印“无效输入”的代码。虽然在像这样的非常小的程序中这不是问题,但在更大的程序中会变得很难看。

请注意,您的案例可能不是avg &lt;= 40。该案例现在打印“你的成绩是:F”。对于 avg 低于 0 的情况,您可能打算使用“无效输入”。 事实上,在计算平均值之前,最好分别检查每个输入

您可能还想了解 C 语言中的 switch 语句。它会为您提供一个更简洁的替代方案,以取代这一长长的 if 语句列表。
但就目前而言,我建议您专注于验证您的输入。

【讨论】:

    猜你喜欢
    • 2022-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-07
    • 1970-01-01
    相关资源
    最近更新 更多