在循环中获取用户输入时,如果以float循环形式给出的输入停止。是什么导致这个?

时间:2017-09-08 09:38:24

标签: c loops variables scanf

#include <stdio.h>

int main()
{
    int mynumber;
    while(1){
        scanf("%d",&mynumber);
        if(mynumber>0){
            while(mynumber>0){
                printf("%d ",mynumber--);
            }
            printf("\n");
        }else{
            return 0;
        }
    }
}

如果用户输入int,则按预期工作。当给出浮点数时,它会打印所有数字但同时退出循环。

我想了解为什么以及如何发生这种情况?

0 个答案:

没有答案