C语言while(scanf("%d",&n)!=EOF)是什么意思?

如题目告诉下谢谢
2025-01-04 05:43:26
推荐回答(3个)
回答1:

scanf("%d", &n) 是从标准输入读入一个整数赋值给n,并且返回值是读入的值。
while( scanf(..) != EOF ) 就是一直从读取数据,直到读到一个EOF标记为止
EOF 是 end of line的意思,也就是行结束标识

回答2:

scanf("%d", &n) 是输入一个值。
while( scanf(..) != EOF ) 就是一直从读取数据中 判断 读到一个EOF标记为止
EOF 是 end of line的意思,也就是行结束标识

回答3:

如:
  scanf("%d,%d", &a, &b);
  如果a和b都被成功读入,那么scanf的返回值就是2
  如果只有a被成功读入,返回值为1
  如果a和b都未被成功读入,返回值为0
  如果遇到错误或遇到end of file,返回值为EOF。
上边的两个都是看返回值来判断的 至于while(~scanf("%d",&n)) 没用过
t>>=1 即t = t >> 1 右移一位再赋值。