From scanf: On success, the function returns the number of items successfully read. This count can match the expected number of readings or fewer, even zero, if a matching failure happens. In the case of an input failure before any data could be successfully read, EOF is returned.
也就是说,scanf函数执行成功,返回值是等于正确读进来的变量个数;否则,返回的可能是任意不等于正确读进来的变量个数或者EOF。
if (scanf("%f",&a) != 1) {
}
这个语句是说如果scanf函数读进的参数个数不等于1,就执行括号中的代码。
追问是不是 不是float类型就往下走的意思?
追答输入浮点数,才算是scanf这个函数执行成功。不是否点数就就是函数scanf执行不成功,执行括号里面的内容。
本回答被网友采纳