转义字符
已经提到“\n”的转义字符,是换行。
常用的转义字符还有“\t”,即横向跳出下一个输出区。
格式化输出
前面,已经学过输出语句的一般格式为:
printf(“格式字符串”[,输出项表]);
常用的格式字符串表示法如下:
“%5d”表示输出十进制带符号的整数,其输出域的宽度为5位,若数超长,则按实际宽度输出;若不足,则输出数的左端补空格。“%ld”只是表示输出的是长整型。
“%-5d” 表示输出十进制带符号的整数,其输出域的宽度为5位,若数超长,则按实际宽度输出;若不足,则输出数的右端补空格。
“%6.1f” 表示输出十进制带符号的单、双精度实数,其输出域的宽度为6位,其中小数一位,若数超长,则按实际宽度输出;若不足,则输出数的左端补空格。
“%-7.2f” 表示输出十进制带符号的单、双精度实数,其输出域的宽度为7位,其中小数2位,若数超长,则按实际宽度输出;若不足,则输出数的右端补空格。
类型转换字符d的使用。
include
main()
{int a=123;
long b=123456;
/用四种不同格式,输出int型数据a的值/
printf("a=%d,a=%5d,a=%-5d,a=%2d\n",a,a,a,a);
/用四种不同格式,输出long型数据b的值/
printf("b=%ld,b=%8ld,b=%-8ld,b=%2ld\n",b,b,b,b);
printf("a=%ld\n",a); //用%ld输出int型数据a
printf("b=%d\n",b); //用%d输出long型数据b
}
分析:
a=%d,按实际长度输出123。
a=%5d,由于123只占3列,所以前面空二个空格,输出a=□□123。
a=%-5d,由于123只占3列,同时有一个“-”号,所以右面空二个空格,输 出a=123□□。
a=%2d,由于123占3列,所以按实际宽度输出。即输出a=123。
b=%ld,按实际长度输出123456。即输出b=123456。
b=%8ld,由于123456只占6列,所以前面空二个空格,输出b=□□123456。
b=%-8ld,由于123456只占6列,同时有一个“-”号,所以右面空二个空格,输出b=123456□□。
b=%2ld,由于123456占6列,所以按实际宽度输出。即输出b=123456。
a=%ld,输出a=123。
b=%d,输出b=123456。