[英]How to limit the user input?
我是編程新手,我想知道如何檢查用戶輸入是否在我的條件之內。 例如,程序僅接受25以下的輸入。
這是我的代碼。 但這不起作用。 :(
for(i=1; i<=5; i++);
{
if(act[i]<25)
{
scanf("%d", &act[i]);
}
}
該代碼不起作用,因為您試圖在實際從用戶收到act[i]
之前評估if條件if(act[i]<25)
。
您需要的是:
for(i=1;i<=5;i++)
{
again:
scanf("%d",&act[i]);
if(!(act[i]<25))
{
printf("Invalid input! Enter again..\n");
goto again:
}
}
如果條件必須在您掃描act [i]之后。 如果用戶輸入的數字不在所需范圍內,則會顯示一條消息,並且您必須再次輸入該數字。
另外, for(i=1;i<=5;i++)
之后不應使用分號for(i=1;i<=5;i++)
假設,如果您收到的數字大於或等於25,則您將永遠嘗試。
for(i=0; i<5; i++)
{
int n;
do{
scanf("%d", &n);
} while(n>=25);
act[i]=n;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.