如果输入的值超出范围,则获取程序以返回错误消息并返回程序启动

时间:2015-03-15 14:55:13

标签: c loops if-statement

我是C的完全初学者,我现在正在尝试编写一个程序,用户可以输入足球联赛的结果,并在每场比赛后计算球队的得分。

联盟中有6支球队,用户需要在项目开始时选择一支球队才能输入该球队的得分。我想要做的是,如果用户输入的值不在1到6之间,程序将返回错误消息。

我尝试了两种不同的方法,但我不确定是否有正确的方向。主队的一种方法如下所示。

    #include <stdio.h>
    int main(void)
{
    int h=0; /*Home team number*/
    int a=0; /*Away team number*/
    int hgoals=0; /*Goals scored by home team*/
    int agoals=0; /*Goals scored by away team*/

    /*User inputs home team number*/    
    printf("Home team number: ");
    scanf_s("%d",&h);   

    /*Returns error message if home team number is not between 1 & 6*/
    if(1<!h<!6){
    printf("Please enter a number between 1 & 6\n");
    }

    return 0;
    }

我的另一个想法是使用if语句,如果输入的数字在1和1之间。 6然后什么都不会发生,如果数字不在1和1之间,则使用else来打印错误信息。 6,但我不确定如何制作一个什么都不做的if语句。我也在想,如果数字不在1和1之间,我必须将整个程序放在循环中以使其重新启动。 6。

感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

更改if声明中的条件:

if(h < 1 || h > 6)
   printf("Please enter a number between 1 and 6\n");