我是编程新手,我想知道如何检查用户输入是否符合我的条件。例如,程序只接受低于25的输入。
这是我的代码。但它没有用。 :(
for(i=1; i<=5; i++);
{
if(act[i]<25)
{
scanf("%d", &act[i]);
}
}
答案 0 :(得分:1)
此代码无效,因为您尝试在实际从用户收到if(act[i]<25)
之前评估if条件act[i]
。
你需要的是:
for(i=1;i<=5;i++)
{
again:
scanf("%d",&act[i]);
if(!(act[i]<25))
{
printf("Invalid input! Enter again..\n");
goto again:
}
}
if条件必须在你扫描了act [i]之后。 如果用户输入的数字不在所需范围内,则会打印一条消息,您必须再次输入该号码。
此外,for(i=1;i<=5;i++)
答案 1 :(得分:0)
假设您持续尝试接收大于或等于25的数字。
for(i=0; i<5; i++)
{
int n;
do{
scanf("%d", &n);
} while(n>=25);
act[i]=n;
}