我想检查用户输入是否为数字,并且我希望程序仅接受数字作为输入。我不知道我是否清楚地解释了自己,我将通过向您展示一个示例来尝试:
int x;
printf("Write a number: ");
scanf("%d", &x);
while(!isdigit(x))
{
printf("Not valid\n");
fflush(stdin);
scanf("%d", &x);
}
我尝试使用scanf("%d", &x) != 1
作为while条件,但它仍然在循环内。在用户输入数字之前,是否有办法要求输入?现在,我只是返回该函数,但我不想这样做。
答案 0 :(得分:0)
您必须检查(let ()
(define (loop (x y)
(loop (+ x 1) (- y 1)))
(loop 1 10))
的返回值:
scanf()