C/C++语言-格式转换字符在输出中的使用

格式转换字符用于将待输出的数据转化为指定格式

数值若不是格式转换的类型,会被强制转换,如1.23通过%d输出成1

格式转换字符作用
%d、%ld有符号32位十进制整数
%lld有符号64位十进制整数
%nd以n位固定位宽输出的整数,若超出按原样输出
%u无符号32位十进制整数
%c一个字符
%s一个字符串
%f保留7位精度有效小数
%.nf强制保留n位输出小数
%lf保留16位精度有效小数
%e以指数形式输出实数
%%百分号
(1)%nd的使用

第一组代码

#include <stdio.h>
int main()
{
 printf("%5d",2);
}

VS运行结果如下

此处2前有4个空格,即加上2本身有5个位宽

再看下面这组

#include <stdio.h>
int main()
{
 printf("%2d",200);
}

VS运行结果如下

待输出的数据超出格式后按原样输出了

(2)%c的使用

第一组代码

#include <stdio.h>
int main()
{
 printf("%c",a);
}

VS报错如下

这样的原因是a在不加小引号时被编译器视作未定义的变量,’a'才是常量

正确的代码和运行结果如下

#include <stdio.h>
int main()
{
 printf("%c",'a');
}

(3)%s的使用

字符串在不加大引号时也被编译器视作未定义的变量

错误的代码和运行结果如下

加上大引号就对了

#include <stdio.h>
int main()
{
	printf("%s","I am happy!");
}

(4)%.nf的使用

%.nf可以用来保留固定位数精确度的小数

#include <stdio.h>
int main()
{
 printf("%.2f",0.123);
}

VS运行结果如下

很明显,三位精确度变成两位精确度,某些情况下可节省内存空间

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

东方启光

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值