C++-格式化输入输出

引子

假设我们用C++来输出一段自我介绍 

#include <bits/stdc++.h>
using namespace std;
int main(){
    int age=18;
    string ID="March_14th";  //可修改数据
    cout<<"我的CSDN ID是"<<ID<<",目前"<<age<<"岁。";
    return 0;
}

但是这样就会导致程序的可读性变差,因为变量和文本混在一起。

那么,C++中有没有一种输出方式,可以在保证运行的同时也保证可读性?答案是当然的,它就是今天的主角:格式化输出函数printf();

格式化输入printf()

printf`函数的一般调用格式为 printf("<格式化字符串>", <参量表>),其中的格式化字符串为实际输出的内容,参量表为其中出现的变量等。当然<参量表>也可以没有

printf("Hello,Word");

上述代码的结果为  Hello,Word  <参量表>的值为零。

当然,在实战中这样的输出不为多,多数的输出中式带有参量的,如

int age=18;
printf("我%d岁了",age);

中就输出了整型变量 age。

转换说明符

大家一定有注意到,输出参量的部分写作了"%d",因为"%d"为转换说明符,转换说明符与参数表是一一对应的。

格式控制字符       输出数据类型             备注

%dint整型变量
%lldlong long变量
%f浮点数变量
%.Xf精确值浮点数X为精确到第X位
%lf长浮点数变量
%e浮点数变量科学计数法
%g浮点数变量删去末尾的0
%cchar字符
%sstring字符串
%p指针
%u无符号十进制整数
%x十六进制整数
%o八进制整数
%%输出“%”

可以使用标志来修改输出格式,下面是常用的标志

标志作用
-左对齐输出,不够补空格
+右对齐输出,强制输出正数
空格若符号+,则显示空格,-则显示"-"
#对o x在输出时加前缀o或0x; 对e g f 有小数时输出小数点
*数字前面补零,指定宽度

格式化输入

格式化输出有了,格式化输入也不能没有。

格式化输入scanf函数的一般调用格式为 scanf("<格式转换说明符>", <参量表>),返回值是读取的参量数。下面是一个示例:

int age;
scanf("%d",&age);

要注意的是,每个读取参量数前都要加上引用符 &

尾声

我们重用C++来输出一段自我介绍 

#include <bits/stdc++.h>
using namespace std;
int main(){
    int age=18;
    string ID="March_14th";
    printf("我的CSDN ID是%s,目前%d岁。",ID,age)
    return 0;
}

  • 10
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值