| 标识符 | 作用 | 
|---|---|
%d | 输入输出 int 类型 | 
%ld | 输入输出 long int 类型 | 
%lld | 输入输出 long long int 类型 | 
%hd | 输入输出 short 类型 | 
%i | 输入输出有符号十进制整数 | 
%u | 输入输出无符号十进制整数 | 
%lu | 输入输出无符号十进制长整数 | 
%llu | 输入输出无符号十进制超长整数 | 
%hu | 输入输出无符号十进制短整数 | 
%o | 输入输出八进制整数 | 
%lo | 输入输出八进制长整数 | 
%ho | 输入输出八进制短整数 | 
%#o | 输出八进制整数,数组有前导 0 0 0 | 
%x | 输入输出十六进制整数,字母小写 | 
%#x | 输入输出十六进制整数,字母小写,数字有前导 0 0 0 | 
%lx | 输入输出长十六进制整数,字母小写 | 
%X | 输入输出十六进制整数,字母大写 | 
%#X | 输出十六制整数,字母大写 ,数字有前导 0 0 0 | 
%lx | 输入输出十六进制长整数,字母大写 | 
%c | 输入输出单个字符 | 
%s | 输入输出字符串,遇到空格、制表符、换行符时结束 | 
%f | 输入输出 float 类型,输出 double 类型 | 
%lf | 输入输出 double 类型 | 
%Lf | 输入输出 long double 类型 | 
%e | 输入输出指数,字母小写 | 
%le | 输入输出长指数,字母小写 | 
%E | 输入输出指数,字母大写 | 
%g | 输入输出指数或 float 类型,字母小写 | 
%lg | 输入输出长指数或 double 类型,字母小写 | 
%G | 输入输出指数或 float 类型,字母大写 | 
%lG | 输入输出长指数或 double 类型,字母大写 | 
%*(所有类型),如 %*c | 可跳过该字符,不读入,例如 scanf("%d%*c%d",a,b) 中,输入 1+2,就会跳过其中的 + | 
, | 无实际用处,用于美观 | 
| 所有字符串、符号(包括符号) | 不赋值 | 
%.md、%.md( m m m 为常数) | m m m 用于在位数小于 m m m 时补空格(右对齐),位数大于 m m m 时忽略掉 | 
%.mf、%.mlf、%.mLf( m m m 为常数) | 输出保留 m m m 位小数 | 
注意:printf 函数的运算是从右往左。