| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 526 人关注过本帖
标题:请大家帮我看一下这两个程序有什么不同的,为什么?
只看楼主 加入收藏
百合园
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-11-12
收藏
 问题点数:0 回复次数:4 
请大家帮我看一下这两个程序有什么不同的,为什么?
错误程序:
#include<iostream>
using namespace std;
int main()
{
    char a,b,c;
    double average;
    while (scanf("%c %c %c",&a,&b,&c)!=EOF)
    {
        average=(double)(a+b+c)/3;
        cout<<average<<endl;
    }
    return 0;
}   


正确程序:
#include<iostream>
using namespace std;
int main()
{
    char a,b,c;
    double a1,a2,a3,s;
    while (cin>>a>>b>>c)
    {
        a1=a;a2=b;a3=c;
        s=(a1+a2+a3)/3;
        cout<<s<<endl;
    }
    return 0;
}  
有什么不同啊?紧急求助....
搜索更多相关主题的帖子: double average 
2011-11-12 21:24
百合园
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-11-12
收藏
得分:0 
现对这个问题很是纠结,我个人觉得没有什么区别啊,但是就是提交不过......很大家积极思考一下下,在此先谢过了,这不仅是给予别人帮助,也是给自己一个挑战.....
2011-11-12 22:02
Toomj
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:257
专家分:1826
注 册:2011-5-17
收藏
得分:0 
scanf(" %c%c%c",&a,&b,&c)!=EOF前面要加一个空格,不然第二次及以后的循环,a的值是'\n';这是scanf()的问题,%c前的空格可以匹配掉所有的空白字符(回车、换行、制表符)。
或者可以在输入前加fflush(stdin);清空缓存。。。
2011-11-12 22:21
Toomj
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:257
专家分:1826
注 册:2011-5-17
收藏
得分:0 
程序代码:
#include<iostream>
using namespace std;
int main()
{
    char a,b,c;
    double average;
    while (scanf(" %c%c%c",&a,&b,&c)!=EOF)
    {
        average=(double)(a+b+c)/3;
        cout<<average<<endl;
    }
    return 0;
}   #include<iostream>
using namespace std;
int main()
{
    char a,b,c;
    double average;
    while (scanf("%c%c%c",&a,&b,&c)!=EOF)
    {
        average=(double)(a+b+c)/3;
        cout<<average<<endl;
        fflush(stdin);
    }
    return 0;
}   

2011-11-12 22:23
hxcet
Rank: 4
等 级:业余侠客
帖 子:78
专家分:229
注 册:2011-11-15
收藏
得分:0 
回复 楼主 百合园
你写的第一个错误的程序,在我这里没错啊,编译执行都不会有问题,结果也没错啊。。。。。
2011-11-18 13:10
快速回复:请大家帮我看一下这两个程序有什么不同的,为什么?
数据加载中...
 
   



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

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