C语言scanf的返回值

#include <stdio.h>
int main(void)
{
  long num;
  long sum = 0L;
  int status;

  printf("Please enter an integer to be summed");
  printf("(q to quit):");
  status = scanf("%ld",&num);
  while (status == 1)
  {
    sum = sum + num;
    printf("Please enter next integer to be summed(q to quit):");
    status = scanf("%ld",&num);
  }
  printf("Those integers sum to %ld.\n",sum);

  return 0 ;
}

scanf返回值:如果成功,该函数返回成功匹配和赋值的个数。如果到达文件末尾或发生读错误,则返回 EOF

while循环的判断是status,当输入的不是数字类型时,scanf会读取失败返回0

posted @ 2019-10-17 11:08  早安帆  阅读(1469)  评论(0编辑  收藏  举报