zoukankan      html  css  js  c++  java
  • C++的输入和输出

    本文作者frankchenfu,blogs网址http://www.cnblogs.com/frankchenfu/,转载请保留此文字。

    C++是一种常用的编程语言。一个完整的程序至少要有一个输出,而我们也经常需要在程序内进行大量输入和输出。所以今天,我和大家谈一谈输入和输出。

    1、cin和cout。可以连续输入,使用流(>>)。有专门的输出的换行“endl”。

    cin>>a>>b;
    cout<<"asdasdasd"<<endl;

    2、scanf和printf。scanf和printf虽然需要占位符,不是很方便,而且容易因为系统影响在评测时莫名出错,但是它的效率大幅超过了cin和cout。

    scanf("%d%lf",number,score);
    printf("%d
    ",rank);

    3、getchar和putchar。getchar和putchar本是字符的输入和输出,但是因为,所以更经常用于输入输出优化。下面的代码是针对全体整数的(输出需要自己输出时改符号哦)。

    int s()
    {
        char ch=getchar();
        int re=0;
        bool fl=1;
        if(ch=='-')
        {
            fl=0;
            ch=getchar();
        }
        while(ch>='0'&&ch<='9')
        {
            re=re*10+ch-'0';
            ch=getchar();
        }
        return fl?re:-re;
    }
    void w(int r)
    {
        if(r>9)
            w(r/10);
        putchar(r%10+'0');
    }

    没有负号?更简单:

    int s()
    {
        char ch=getchar();
        int re=0;
        while(ch<'0'||ch>'9')
            ch=getchar();
        while(ch>='0'&&ch<='9')
        {
            re=(re<<3)+(re<<1)+ch-'0';
            ch=getchar();
        }
        return re;
    }

    当然,也可以用于字符的输入输出。例如,

    a=getchar();
    putchar('
    ');

    4、gets和puts,以及getline。

    这些都是针对字符串的,在写高精度的时候也会用到。需要注意的是,puts是包括输出一个换行符的,也就是说,如果输出后不想换行,只能使用printf("%s",……)了。

    gets(a1);
    puts("asdasdasd");
    getline(cin,s1);

    希望对大家有所帮助,谢谢。

  • 相关阅读:
    finally 到底是什么时候执行的问题
    转发与重定向
    java中的常量池
    数据库优化之设置fetchSize
    java集合去重和排序
    jdbc连接数据库
    重写和重载的区别
    <? extends E>和<? super E> 的意义和区别
    入栈和出栈规律
    JAVA中poi操作excel合并单元格的技巧,以及easypoi,注解@Excel的操作
  • 原文地址:https://www.cnblogs.com/frankchenfu/p/6347854.html
Copyright © 2011-2022 走看看