首页 > 其他 > 详细

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

时间:2020-04-02 00:59:13      阅读:84      评论:0      收藏:0      [点我收藏+]

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//精度控制

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!