C++输入输出

C++输入输出

1、C++输入输出流

cin,cout,头文件< iostream >

当遇到大数据时,即读写量在1e5以上,就可能导致超时(具体还要根据算法复杂度判断),所以在读写之前添加两行代码来加快运行速度

ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);

注:此时不能cin/cout和scanf/printf混用,比较合理的解释:默认情况,cin与stdin总是保持同步的,也就是说这两种方法可以混用,而不必担心文件指针混乱,同时cout和stdout也一样,两者混用不会输 出顺序错乱。正因为这个兼容性的特性,导致cin有许多额外的开销,如何禁用这个特性呢?只需一个语句 std::ios::sync_with_stdio(false);,这样就可以取消cin于stdin的同步了,此时的cin就与scanf差不多 了。

2、输出格式函数

封装在< iomanip >库中

  • setw(n)——设置宽度为n

    int num = 1234;
    cout<<setw(5)<<num<<endl;
    

    运行结果:

在这里插入图片描述

  • setfill(ch)——设置填充为ch字符
int num = 1234;
    cout<<setw(5)<<setfill('A')<<num<<endl;

运行结果
在这里插入图片描述

  • setprecision(n)设置有效数字
    double num = 1234.56;
    cout<<setprecision(5)<<num<<endl;
    //结果为 1234.6//某些要求精度,保留一位数的可以用这个搞
	double num = 1234.56;
    cout<<setprecision(3)<<num<<endl;
    //结果为 1.23e+003
	double num = 1234.56;
    cout<<setprecision(10)<<num<<endl;
    //结果为 1234.56

注:cin和cout输入输出数据时,全部使用了系统默认的格式。我们可设置转换基数的操纵符hex(十六进制),dec(十进制),oct(八进制)。例:

    int x=25;
    cout<<hex<<x<<endl;//十六进制
    cout<<dec<<x<<endl;//十进制
    cout<<oct<<x<<endl;//八进制

运行结果:

在这里插入图片描述

posted @ 2021-01-05 14:31  许君  阅读(150)  评论(0编辑  收藏  举报