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。