c/c++输入输出总结

一般oj会提示只允许用scanf、printf及cin、cout。这里还介绍了一些其他的输入输出方式。

目录

1.c语言

  输入

   scanf(格式,变量):返回读入变量个数

   getchar():

  putchar(字符): 

   gets(数组名):

    fgets:

    输出

    printf("<式样化字符串>",<参量表>):返回输出的字符数

    puts:

2.c++语言

   输入

   cin:

   getline(cin,字符串):

   cin.getline(字符数组名,长度,结束字符):

    输出

    cout:

3.oj的输入


1.c语言

  输入

   scanf(格式,变量):

    返回读入变量个数

    停止方式:遇空格,换行时会停止。

类型及写法
类型格式变量
int%d&n
long long int%ld&n
unsinged int%u&n
float%f&n
double%lf&n
char%c&n
char[]%sn(数组名即可)

   getchar():

       用来读入字符,包括"\n"。

       使用:

char c1=getchar();
getchar();

输入ab。c1为a,b被吸收。

  putchar(字符): 

输出字符

   gets(数组名):

      停止方式:从stdin流中读取字符串,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。换行符不作为读取串的内容,读取的换行符被转换为‘\0’空字符,并由此来结束字符串。

      使用:用于读入字符串。用gets_s函数更好。

    fgets:

       从文件结构体指针stream中读取数据,每次读取一行。

        使用:键盘输入fgets(buf,n,stdin)

        与gets相比使用这个好处是:读取指定大小的数据,避免gets函数从stdin接收字符串而不检查它所复制的缓存的容积导致的缓存溢出问题。

    输出

    printf("<式样化字符串>",<参量表>):

    返回输出的字符数

     特点:包含精度控制,进制转换。

格式与说明
格式                                               说明
%mdm 为指定的输出字段的宽度。如果数据的位数小于 m,则左端补以空格,若大于 m,则按实际位数输出。
%.mf输出实数时小数点后保留 m 位,注意 m 前面有个点。
%o以八进制整数形式输出
%x以十六进制整数形式输出
%s用来输出字符串

                                                                                 (不全,%c这样的就不写了)

    puts:

     使用:用于输出字符串。

2.c++语言

   输入

   cin:

     停止方式:遇空格,换行时会停止。

     所有类型均可以读入,常用。

   getline(cin,字符串):

   它会生成一个包含一串从输入流读入的字符的字符串,直到以下情况发生会导致生成的此字符串结束。1)到文件结束,2)遇  到函数的定界符,3)输入达到最大限度。

     全局函数的getline(cin,str);处理后还留有结束符在输入流中,故需要使用cin.get();//接受最后一个结束符,才能接受后面得输入值。

   cin.getline(字符数组名,长度,结束字符):

      当第三个参数省略时,系统默认为'\0'

    输出

    cout:

      所有类型均可以输出,常用。

3.oj的输入

    只提一下,不告诉组数,没有输入结束提示符时的输入。

    c语言:

while(scanf("%d",&n)!=EOF)
{

}

c++:

while(cin>>n)
{

}

 

未完待续...

  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lady_killer9

感谢您的打赏,我会加倍努力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值