利用scanf函数返回值判断数据输入是否正确
关于scanf函数返回值的理解及用法
1.scanf()函数有返回值且为int型。scanf返回值表示成功读入的数据个数。
2.scanf()函数返回的值为:正确按指定格式输入变量的个数;也即能正确接收到值的变量个数。
例如,scanf("%d%d", &a, &b); 如下为返回值的四种情况
(1) 如果a和b都被成功读入,那么scanf的返回值就是2
(2) 如果只有a被成功读入,返回值为1scanf用法c++
(3)如果a和b都未被成功读入,返回值为0(即scanf函数遇到非法输入时,返回值为0)
(4)如果遇到错误或遇到文件结束符(end of file,EOF,控制台下用Ctrl+Z输入)则返回EOF(stdio.h中定义符号常量:#define EOF -1)。
由此例可见因此可利用scanf函数的返回值判断数据是否正确读入。
例如,
#include
/*此代码测试scanf函数返回值状态,若不输入正确数据输入ctrl+z即文件结束符该函数返回值为-1*/
int main(int argc, char *argv[])
{
int x,y,c;
c=scanf("%d %d",&x,&y);
printf("x=%d y=%d",x,y);
printf("\nc=%d\n",c);
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。