码迷,mamicode.com
首页 > 其他好文 > 详细

OJ初体验---A+B问题//EOF//精度控制

时间:2020-04-02 01:04:55      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:turn   问题   精度   stream   精度控制   span   c语言   ios   实现   

1.A+B问题//控制EOF

#include <iostream>

using namespace std;//C++头文件

{

int a,b;

while(cin>>a>>b)//相当于C语言中的while(scanf("%d %d",&a,&b)!=EOF)

{

cout<<a+b<<endl;//输出a+b的和,endl相当于C语言中的\n

}

return 0;

}

其中输出也可以这样写:cout<<"sum="<<a+b<<endl;(需要提前定义sum)。

注意cin后跟“>>",cout后跟"<<"。
--------------------------------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------------------------------------------

2. EOF判断

 1.while((scanf"%d,%d",&m,&n)==2)

  {

  //...

  }

2.while((scanf"%d,%d",&m,&n)!=EOF)

  {

  //...

  }

3.while(cin>>m>>n)

   {

   //...

   }

 

 

( scanf("%d %d", &n, &m), n+m) -- 这是“逗号”表达式。

--------------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------------

3.输出控制精度

在C++中,是没有格式符的,我们可以通过使用setprecision()函数来实现这个需求。

想要使用setprecision()函数,必须包含头文件#include <iomanip>。使用方式如下:

cout << "a=" << setprecision(2) << a <<endl;

这时候,我们会发现,如果a的值为0.20001,输出的结果为a=0.2,后面第二位的0被省略了。

如果我们想要让它自动补0,需要在cout之前进行补0的定义。代码如下:

cout.setf(ios::fixed);
cout << "a=" <<fixed<< setprecision(2) << a <<endl; //输出a=0.20

这样,我们就可以得到0.20了。当然,如果想要关闭掉补0,只需要对fixed进行取消设置操作。

cout.unsetf(ios::fixed);
cout << "a=" << setprecision(2) << a <<endl; //输出a=0.2

我们的输出结果就又变回a=0.2了。

OJ初体验---A+B问题//EOF//精度控制

标签:turn   问题   精度   stream   精度控制   span   c语言   ios   实现   

原文地址:https://www.cnblogs.com/Begin-Again/p/12616886.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!