使用 CIN 和 COUT 在 C++ 中声明基本数据类型


#include <iostream>
#include <cstdio>
using namespace std;
int main() {
int a;
long b;
char z;
float c;
double d;
cin>>a;
cin>>b;
cin>>z;
cin>>c;
cin>>d;
cout<<a<<endl;
cout<<b<<endl;
cout<<z<<endl;
cout<<c<<endl;
cout<<d<<endl;
// Complete the code.
return 0;
}

在上面的程序中,我认为我已经完成了所有正确的事情,但是当我给出这样的输入时,例如:

368252310 27547295356575738 c 46866.250 -247884.497885257

输出应显示相同的数字,但未显示相同的数字。它正在显示一些其他数字 所以,伙计们请帮助我,我是编程新手。

你会得到这样的输出:

368252310
27547295356575738
c
46866.2
-247884

您需要执行 2 次更改才能获得相同(但不完全相等)的输出。 首先,将'n'替换为空间。 其次,设置cout精度。

cout<<a<<' ';
cout<<b<<' ';
cout<<z<<' ';
cout.precision(16);
cout<<c<<' ';
cout.precision(16);
cout<<d<<endl;

你会得到这样的输出:

368252310 27547295356575738 c 46866.25 -247884.497885257

这是因为默认精度低于您的输入。

但是存在一些给出不同输出的数字,因为double精度是有限的,并且浮点数之后的最后一个零默认情况下不显示(并且不保存)。 如果您需要获得完全相同的输出,则应保存字符串,而不是整数或浮点值。 您可以尝试使用选项"固定"输出:cout << fixed << c << ' ';

最新更新