【发布时间】:2013-11-18 03:10:32
【问题描述】:
我在这里有一个代码,它可以查看用户输入是字符串还是 1-49 范围内的整数。如果我输入“asdas”,则表示无效,如果输入“1-49”中的整数,则表示有效。我在使用此代码时遇到的问题是,如果我输入“2 asda” 它会同时认为它有效和无效,如果我输入“2 2”,它也会认为有效。刚刚发现它也接受“2d”作为有效输入。
for (i = 0; i < 6; i++)
{
printf("\nPlease enter the %d winning ticket numbers!: ", i+1);
if (scanf("%d", (&winningNumbers[i])) == 0 || (winningNumbers[i] <= 0) || (winningNumbers[i] >= 50))
{
inputFlush();
printf("\nInvalid Input. Please re-enter.\n") ;
i = i - 1;
}
}
for (i = 0; i < 6; i++)
{
printf("%d, ", winningNumbers[i]);
}
【问题讨论】:
标签: c