标签:
问题:
是否会遇到这样的问题,在while循环中 sanf("%d",&a);如果输入的不是数字,是字符就会进入死循环。
解决方案:
都是缓冲区惹的祸,输入字符后,字符会一直留在缓冲区,一直读取的是那个字符,所有会一直循环下去。
---------------------------------------------------
fflush(stdin); //清除缓冲,避免重复循环
--------------------------------------------------
在while循环前面加上这个就可以了。
标签:
原文地址:http://www.cnblogs.com/Zengineer/p/4312680.html