作业帮 > 综合 > 作业

c++ 一道简单的题 关于scanf和EOF的问题

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/01 14:39:40
c++ 一道简单的题 关于scanf和EOF的问题
题目是这样的
描述
两个整数a和b分别作为分子和分母,即分数 a/b ,求它的浮点数值(双精度浮点数,保留小数点之后9位);如果分母为0,则输出"Error"(不含双引号)。





关于输入
输入有若干行,每行包括两个整数a和b




关于输出
对于每一行输入,输出一行,即分数a/b的浮点数值(双精度浮点数,保留小数点之后9位);如果b等于0,则输出"Error"(不含双引号)。




例子输入
5 7
5 0
-1 7




例子输出
0.714285714
Error
-0.142857143





提示
利用scanf的返回值是否等于2或EOF来判断输入是否结束
利用printf("%.9lf",...)实现保留小数点之后9位
求大神这题应该怎么做。。。尤其是关于scanf和EOF的问题。。。
程序如下,满意请采纳
#include<cstdio>
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    double  x=0.0,y=0.0;
cout<<"输入两个数,空格分开"<<endl;
    while(scanf("%d %d",&x,&y)!=EOF)
    {
      if(x==0)
cout<<"Error"<<endl;
      else
cout<<fixed<<setprecision(9)<<x/y<<endl;
  cout<<"继续输入两个数,空格分开"<<endl;
    }
}