标题:C语言简单问题!
只看楼主
luojiawei
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-8-17
结帖率:0
已结贴  问题点数:5 回复次数:3 
C语言简单问题!
题目如下:

计算a加b。
两个整数a和b,其中0≤a, b≤10。
输出a与b的和。


答案如下:
#include<stdio.h>
int main()
{
    int a,b;
    while(scanf("%d%d",&a,&b) != EOF)
    {
        printf("%d\n", a+b);
    }
    return 0;
}


为什么是这样啊 while(scanf("%d%d",&a,&b) != EOF)
里面为什么用while啊   !=EOF  是什么意思啊
搜索更多相关主题的帖子: TAG 
2009-08-17 15:19
soler
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
帖 子:181
专家分:1077
注 册:2005-7-16
得分:1 
突然发现还有马甲呢,^_^。。。。
2009-08-17 16:02
xiaoyuer110
Rank: 2
等 级:论坛游民
帖 子:37
专家分:17
注 册:2009-7-29
得分:1 
为什么是这样啊while(scanf("%d%d",b)!=EOF)里面为什么用while啊;是什么意思啊
也就是说不等于EOF不退出循环你以后见到很多这例题;例如!=0;也就是说!你输入的时候没输入0他就继续让你输入呵呵!请楼下的补冲;还有!=回车这些都可以!就是没你按回车键!他继续循环!当等于回车了!他就跳出循环了

[ 本帖最后由 xiaoyuer110 于 2009-8-25 20:13 编辑 ]

除学者!不是败给程序不懂!而是编的时候不够心细!
2009-08-25 20:08
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
得分:1 
while(scanf("%d%d",&a,&b) != EOF)

EOF 相当于-1
scanf函数会反回一个非零或0的整型值,也就是 1 和 0
当输入ctrl+z,scanf函数反回-1,这时循环才结束。

给你个代码实验一下。
#include <stdio.h>
main()
{
int x,y;
while(1)
   {
    x=scanf("%d",&y);
    printf("%d %d\n",x,EOF);
    if(x==EOF)
     {
      printf("x==EOF\n\n");
      break;
     }
   }
}

努力—前进—变老—退休—入土
2009-08-25 20:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-283016-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.495142 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved