%+字母或数字:表示要输出的数据类型。
%d:十进制有符号整数。
%u:十进制无符号整数。
%f:浮点数
%s:字符串
%c:单个字符
%p:指针的值
%e:指数形式的浮点数
%x、%X:无符号以十六进制表示的整数
%0:无符号以八进制表示的整数
%g:自动选择合适的表示法
下面将以输入(scanf)输出(printf)说一下加数字再加字母的形式:
printf是输出语句,%4d表示输出的场宽为4位,%1d表示输出的场宽为1位,但另有附加规定,当所给出的场宽不足时,按实际需要占位输出。所以输出10,给%1d仍将输出10,不会只输出1,不输出0。
scanf是输入语句,%4d表示读入的数为4位整数,超出4位只读4位,不足4位则按实际位数读入,%1d表示读入的数为1位整数,超出1位只读1位。
例如:scanf("%1d%4d", &x, &y);
拍入987654321回车
x读入9,y读入9876,余下的4321留在输入缓冲区,供后面的输入语句使用。
测试代码如下:
