繁体   English   中英

使用cin和cout声明C ++中的基本数据类型

[英]declaring basic data types in c++ using cin and cout

 #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精度是有限的,并且默认情况下不显示浮点后的最后零(并且不保存)。 如果需要获得完全相同的输出,则应该保存字符串,而不是整数或浮点值。 并且您可以尝试使用选项“ fixed”输出: cout << fixed << c << ' ';

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM