标题:我错在哪里呀?
取消只看楼主
指幕天
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-3-7
 问题点数:0 回复次数:3 
我错在哪里呀?

#include "stdio.h"
main()
{
double m=0,n=0;
for(;;)
{
scanf("%f",&n);
if(getchar()=='+')
{
scanf("%f",&m);
n+=m; printf("=%f",n);
}
if(getchar()=='-')
{
scanf("%f",&m);
n-=m; printf("=%f",n);
}
if(getchar()=='*')
{
scanf("%f",&m);
n*=m; printf("=%f",n);
}
if(getchar()=='/')
{
scanf("%f",&m);
if(m==0)printf("error");
else n/=m; printf("=%f",n);
}

}
}
四则运算计算器的编程...我错在哪里呀?请高手指点!

搜索更多相关主题的帖子: scanf getchar printf 
2006-03-22 19:38
指幕天
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-3-7
得分:0 
以下是引用haishanglang在2006-3-22 20:08:00的发言:

以下是引用指幕天在2006-3-22 19:38:00的发言:

#include "stdio.h"
main()
{
double m=0,n=0; //用float精度足够了
for(;;)
{
scanf("%f",&n);
if(getchar()=='+') //你输入了n后按了回车键,因此这里的 getchar()为'\n' ,非'+','-",' * ',"/"
{ /*我没有按回车的
scanf("%f",&m);
n+=m; printf("=%f",n);
}
if(getchar()=='-')
{
scanf("%f",&m);
n-=m; printf("=%f",n);
}
if(getchar()=='*')
{
scanf("%f",&m);
n*=m; printf("=%f",n);
}
if(getchar()=='/')
{
scanf("%f",&m);
if(m==0)printf("error");
else n/=m; printf("=%f",n);
}

}
}
四则运算计算器的编程...我错在哪里呀?请高手指点!


念双燕,难凭音信;指幕天,空识归航!
2006-03-22 21:45
指幕天
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-3-7
得分:0 
是的,我只是想知道上面哪里错了.....先在还不明白,请指教...

念双燕,难凭音信;指幕天,空识归航!
2006-03-22 21:55
指幕天
Rank: 1
等 级:新手上路
帖 子:47
专家分:0
注 册:2006-3-7
得分:0 
但是运行结果不对呀...

念双燕,难凭音信;指幕天,空识归航!
2006-03-23 16:48



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




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

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