C语言控制台打印输出整齐问题 您所在的位置:网站首页 c语言打印矩阵换行 C语言控制台打印输出整齐问题

C语言控制台打印输出整齐问题

2023-09-07 02:37| 来源: 网络整理| 查看: 265

关键词:控制台\打印\制表符\空格\格式控制符\列\对齐\ 初衷: 经常写程序时需要打印输出,然后每次又打印的一团糟糕,我又是一个接近强迫症和略微完美主义者,碰巧好像网上没有我所需要的帖子,所以经过探索之后得到这些如何让自己在控制台打印输出整齐的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 实验室设备网 版权所有