C语言printf格式化输出
前言
刚开始学C语言时,在使用
printf进行格式化输出时,感觉好乱好杂,记不住.
今天刷题,需要用格式化输出,然后又重新回顾了printf格式化输出
现在看来,挺容易理解的.
printf格式化输出
基本的数据格式
下面说几种常用的格式,都是在C语言编程中常用的,多练就能熟练,楞背可能记得不牢固
| 格式控制符 | 意义 |
|---|---|
| %o | 以八进制整形 |
| %d | 十进制整形 |
| %x | 十六进制整形 |
| %f | 输出浮点数,默认小数点后6位 |
| %lf | 输出双精度实数(就是比float更精确),可以精确到小数点后16位,默认6位 |
| %c | 输出单个字符 |
| %s | 输出字符串 |
| %% | 输出一个百分号% |
都是基于上面的基本数据类型进行修饰的
以%d为例
| 格式修饰符 | 意义 |
|---|---|
| %smd | 域宽为m,大于m就正常输出,小于m则左边补s,凑够m位,s省略默认补空格 |
| %.nf | 控制输出小数点后n位 |
案例分析
int a = 23;
printf("%d",a);正常输出23
printf("%5d",a)域宽为5,但是a长度只有2,所以默认左边补空格,凑够到5位
printf("%05d",a)输出域宽为5,但是a长度只有2,则默认左边补0,凑够到5位
float b = 2.3;默认会是小数点后6位
float在输出时会自动根据精度四舍五入
printf("%.2f",b精确到小数点后2位
printf("%10lf",b)域宽是10,就是整数部分加上小数部分再加上小数点一共10位,不够左边补空格
结果


浙公网安备 33010602011771号