C语言控制台打印输出整齐问题 | 您所在的位置:网站首页 › c语言打印矩阵换行 › C语言控制台打印输出整齐问题 |
关键词:控制台\打印\制表符\空格\格式控制符\列\对齐\ 初衷: 经常写程序时需要打印输出,然后每次又打印的一团糟糕,我又是一个接近强迫症和略微完美主义者,碰巧好像网上没有我所需要的帖子,所以经过探索之后得到这些如何让自己在控制台打印输出整齐的Tips,同时和大家分享!鄙人水平不够,有错还望指教 首先你需要明白的影响打印整齐控制的因素: 1.制表符(8个空格) 2.键盘输入一个空格(一个空格) 3.格式控制符(具体空格情况不同,见下) 4.打印的内容(英文数字占一个空格,汉子2个空格,其他标点符号基本一个空格) \t 制表符 占八个空格 我的理解: 制表符顾名思义是如同划分表格一般将将面分割成8个空格为1个大格的表 系统在检测到\t时,会自动统计:从上一个\t控制的大格子尾部到此\t所占的空格数(空格即位数即列数)。 \t会根据统计到前面输出占有的空格数对后面进行补空格输出。 假如统计空格数为N,则补齐Num=8-N%8个空格(7个补一个,8个补8个,8个补7个,12个补4个) 参考(转义字符) 格式控制符控制的位数 如%10s、%4.2d等等 参考格式控制符详细 举个例子: 对于%10s,如果实际打印没超过格式规定长度10,则计算的空格数数为10,如果超过10,则按实际长度计算 ,如果打印了6个字,占12个空格,则计数的空格数为12. 5) 键盘自己敲入的空格也会被统计在内(相信大家经常敲入空格来使打印进退),即如果在%10s前空了4个空格,则统计要加上空格数。 举例说明: 我现在要打印一些车辆的信息,我想让上面的类别信息和下面打印的数据对齐(一开始我们没有添加\t) printf("当前信息库中共有%d台车辆信息\n",M); printf("车主姓名车牌号码汽车品牌车长车高购买年份\n"); for(int i=0;i |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |