C下如何通过scanf()函数获取正确的数据
2011-04-22 22:48
525 查看
初学C语言,在看了几个范例程序之后发现他们都没有对用户输入数据类型的合法性进行判断。所以依据目前仅有的知识,本人编写了下面这段代码,试图实现获取正确的数据。
以上代码在VC6.0下编译通过;可是运行时,当输入任意非数字字符,程序陷入死循环,不停地显示“输入错误!请重新输入:”。于是将循环部分修改为:
可是死循环问题依旧。
恳请各路高手不吝予以指点。
]#include <stdio.h> void main() /*用户必须输入一个数字*/ { float x; short a; printf("请输入一个数字:"); a=scanf("%f",&x); while(a==0) /*对输入的数据进行判断*/ { printf("输入错误!/n请重新输入:"); a=scanf("%f",&x); } printf("您输入的数字为:%f。",x); }
以上代码在VC6.0下编译通过;可是运行时,当输入任意非数字字符,程序陷入死循环,不停地显示“输入错误!请重新输入:”。于是将循环部分修改为:
while(scanf("%f",&x)==0) printf("输入错误!/n请重新输入:");
可是死循环问题依旧。
恳请各路高手不吝予以指点。
相关文章推荐
- 如何正确理解PHP获取显示数据库数据函数
- 在vuex的store中如何正确的通过axios进行请求操作获取数据
- 如何通过URL获取天气PM2.5的数据,返回json
- 请问在VB.NET 3.5中如何通过SqlDataSource 获取数据
- 请教大师!如何用 scanf 正确输入数据?
- 关于通过GPS模块获取的坐标数据无法在Google地图上正确标记的问题说明
- 指令中directive 如何获取父级中通过$http获取的数据
- 通过代理更新UITableHeaderFooterView某一行数据时,如何获取更新哪一行的
- ECharts图表组件中级入门篇:如何通过Ajax异步获取图表数据赋值于图表并渲染呈现
- Javascript如何用一个优雅的姿势通过getStyle函数来获取元素的样式
- Python如何获取到当前函数名和通过字符串调用函数
- jquery如何通过ajax请求获取后台数据显示在表格上
- 关于表格通过 Class点击时间获取行数据不正确的分析
- 关于通过GPS模块获取的坐标数据无法在Google地图上正确标记的问题说明
- 如何通过Zabbix获取监控数据?
- Matlab通过sina web接口获取个数即时股票数据函数实现代码
- 如何通过图片在 HTTPS 网站中获取 HTTP 接口数据
- 如何通过qcow2镜像获取虚拟机的磁盘数据
- 如何通过函数名获取虚函数的地址?
- 如何通过表单上传图片数据,PHP后端获取并且保存文件数据