我们可以运用printf,\n和\t实现多行对齐输出。比如:显示图1所示的购物清单。
图1 购物清单
最后程序的运行效果如图2所示。
图2 运行效果
C语言源代码:
#include
int main(void)
{
printf("\t\t\t京东JD.COM购物清单\n");
printf("\t\t\t 多·快·好·省\n");
printf("=====================================================================\n");
printf("商品编号\t商品名称\t\t\t\t数量\t金额\n");
printf("\n");
printf("10242778\t新编佛山市地图\t\t\t\t 1\t10.80\n");
printf("11418968\t中华人民共和国分省系列地图·澳门特别\t 1\t6.00\n");
printf("\t\t行政区地图(折叠袋装)\n");
printf("11350962\t洛克菲勒自传\t\t\t\t 1\t16.60\n");
printf("10927267\t珠海指南地图:领秀城\t\t\t 1\t8.00\n");
printf("=====================================================================\n");
return 0;
}
要点说明:
(1) \n实现的是换行功能,功能与键盘上的回车键一致,其ascii码值是\x0a,即语句
printf("\n"); 与
printf("\x0a");
是一样的。
(2) \t实现的是跳转到下一个制表位置,功能与键盘上的Tab键一致,默认是8个字符位置。请看第7行代码:
printf("商品编号\t商品名称\t\t\t\t数量\t金额\n");
“商品编号”是4个汉字,正好是8个字符,占据了一个制表位,因此后面的\t就跳转到下一个制表位置,即“商品名称”与“商品名称”之间隔8个字符。
“数量”只有2个汉字,4个字符,“数量”后面的\t同样跳转到下一个制表位,因为“数量”后面还剩4个字符,因此下一个制表位从“数量”开始算起的8个字符,即“数量”与“金额”之间隔4个字符。
printf("\n"); 与
printf("\x0a");
是一样的。
(2) \t实现的是跳转到下一个制表位置,功能与键盘上的Tab键一致,默认是8个字符位置。请看第7行代码:
printf("商品编号\t商品名称\t\t\t\t数量\t金额\n");
“商品编号”是4个汉字,正好是8个字符,占据了一个制表位,因此后面的\t就跳转到下一个制表位置,即“商品名称”与“商品名称”之间隔8个字符。
“数量”只有2个汉字,4个字符,“数量”后面的\t同样跳转到下一个制表位,因为“数量”后面还剩4个字符,因此下一个制表位从“数量”开始算起的8个字符,即“数量”与“金额”之间隔4个字符。
为了直观表示\t,请看图3。
图3 \t示意图
(3)第5行代码:
printf("\t\t\t 多·快·好·省\n");
中间的·号是在中文状态下按下键盘上的如图4红框所示的键即可。
printf("\t\t\t 多·快·好·省\n");
中间的·号是在中文状态下按下键盘上的如图4红框所示的键即可。
图4 输入中间·号