11.5
11.5printf和scanf介绍
占位符
在scanf和printf中可以使用,意思是这个位置是有占位符占用,可以在双引号时候使用逗号分隔开需要替换的值,其与占位符一一对应
"%d%c%d",21,a,22
--->21a22
常用占位符列举
%a:⼗六进制浮点数,字⺟输出为⼩写%A:六进制浮点数,字⺟输出为⼤写%c:字符%d:⼗进制整数%e:使⽤科学计数法的浮点数,指数部分的 e 为小写%E:使⽤科学计数法的浮点数,指数部分的 E 为大写%i:整数,基本等同于 %d%f:⼩数(包含 float 类型和 double 类型)%g:6个有效数字的浮点数。整数部分⼀旦超过6位,就会⾃动转为科学计数法,指数部分的 e 为⼩写%G:等同于 %g ,唯⼀的区别是指数部分的 E 为⼤写%hd:⼗进制 short int 类型%ho:⼋进制 short int 类型%hx:⼗六进制 short int 类型%hu:unsigned short int 类型%ld:⼗进制 long int 类型%lo:⼋进制 long int 类型%lx:⼗六进制 long int 类型%lu:unsigned long int 类型%lld:⼗进制 long long int 类型%llo:⼋进制 long long int 类型%llx:⼗六进制 long long int 类型%llu:unsigned long long int 类型%Le:科学计数法表⽰的 long double 类型浮点数%Lf:long double 类型浮点数%n:已输出的字符串数量。该占位符本⾝不输出,只将值存储在指定变量之中%o:⼋进制整数%p:指针%s:字符串%u:⽆符号整数(unsigned int%x:⼗六进制整数%zd:size_t 类型%%:输出⼀个百分号
printf
将参数文本输出到屏幕,它里面的f代表format(格式化),表示可以定制文本格式。
经典:
#include<stdio.h>
int main()
{
printf("Hello World");
return 0;
}
如果希望换行,可以在想要换行的地方添加\n(换行符)
printf()是标准库的头文件stdio.h定义的,在使用之前,必须在源码文件头部引入这个头文件
stdio->>standard input output
限定宽度
"%5d"-->表示这个占位符宽度至少为5,如果不为5则在前面补空格,可补充‘0’,‘+/-’等符号
例:
数字
printf("%5d",123);//" 123"
printf("%-5d",123);//"123 "
printf("%12f",123.45);//" 123.450000"-->小数的默认显示精度是小数后6位,所以前面补2个空格
printf("%+d",12);//"+12"
printf("%+d",-12);//"-12"-->显示符号
printf("%.2f",0.5);//"0.50"
printf("%6.3f",0.5);//" 0.500"
printf("%*.*f",6,2,0.5);//与上一个等价,即可以通过传参实现
字符串
printf("%.5s","hello world");//"hello"

浙公网安备 33010602011771号