如何判断scanf()输入是int型、正整数

来源:互联网 发布:战舰世界布琼尼数据 编辑:程序博客网 时间:2024/06/06 08:26

scanf()也有返回值,输入正确时,返回正确读入的参数个数,且为int 型;无参数正确读入或文件末尾错误,返回0或EOF;

利用其返回值判断输入是否为int,若输入为字母、小数或其他特殊符号退出循环,代码如下:

int main(void)

{

int status, num = 1;

printf(" Please input  a integer number: \n ");

status = scanf("%d", &num);

while(status == 1)

printf(" num = %d \n ",num);

printf(" Please input another integer number: \n ");

status = scanf("%d", &num);

}

printf("Done!\n");

return 0;

}

以上代码只能判断输入为int型,可通过添加判断语句限制输入为正整数;

while(status == 1 && num > 0)



1 0
原创粉丝点击