C语言顺序表:如何用C语言绘制一个漂亮的ASCII表

我想画一张桌子,

----------
|   |    |
----------
|   |    |
----------
|   |    |
----------
|   |    |
----------

然而,它看起来凌乱和丑陋:(另一件事困扰我的是每行的宽度,因为在每个框中,包含一个数字。

void draw_table( entry* ptr, int size ) {
    int x = 0;
    for( ; x < size; ++x ) {
        printf( "_____ _____ \n" );
        printf( "| %d | %d | \n", ptr[x].virtual_page, ptr[x].page_frame );
    }
}

如何将每个"_____"的长度与每个框中的整数(位数)匹配?

5

您可以使用 printf 中的字段宽度格式说明符使所有数字以固定宽度打印。然后你可以很容易地格式化你的表。例如:

printf("|%8d|", 12345);

将打印:

|   12345|

有关您可以做的所有事情,请参阅 printf 的手册页(google“man printf”)。它可以做一些非常强大的格式化。

3

对于每一列,您需要预先测量其中最宽条目的宽度,然后执行类似的操作

printf("...%.*s...", n, "____________________________");

打印n下划线。还有其他方法,但这是最简单的。

就个人而言,我会避免生成这样的 ASCII 表,而是生成一些更高级别的标记,如 HTML<table>,并使用现有的库代码将其转换为纯文本,如果需要。

2

顺便说一句,很高兴用加号绘制它,就像这样:

+-----+-----+
|Head1|...  |
+-----+-----+
|     |     |
|     |     |

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(862)
机架服务器和刀片服务器区别:应用服务器和Web服务器有什么区别
上一篇
并且c语言:C语言是中级语言吗(c is high level language)
下一篇

相关推荐

  • qsort源码:实现快速排序的C语言qsort函数

    qsort()函数是一个快速排序算法,它能够根据用户提供的比较函数来对数组中的元素进行排序。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。…

    2023-01-23 09:37:27
    0 67 26
  • fun在c语言中什么意思:使用fun函数编写C语言程序

    示例示例在C语言中,fun是一个函数的名称。函数是一种可以重复使用的代码块,它可以接受参数,执行一些操作,并返回一个结果。例如:…

    2023-03-08 06:35:32
    0 72 22
  • java 调用 c:在 Java 中调用 C 语言编写的函数

    示例示例Java 调用 C 的方法有两种:使用 JNI(Java Native )技术。JNI 是一种 Java 调用本地代码的技术,通过它可以让 Java 和本地代码(如 C/C++)相互调用。…

    2023-02-19 09:43:46
    0 83 71
  • xcode c语言:如何使用Xcode来开发C语言程序

    Xcode C语言是一种由Apple公司开发的基于C语言的编程语言,它是Mac OS X和iOS系统的主要编程语言。Xcode C语言支持标准C语言,并提供了一些特殊的语法,以及一些针对Apple操作系统的特定功能。…

    2023-03-05 04:06:33
    0 69 50
  • 自学c语言:MSDN网站是否足够用于 C#自学(msdn website)

    关于自学c语言的问题,在msdn website中经常遇到,我知道有很多关于 C # 的书籍,但我宁愿通过阅读文章 / 指南和观看视频教程来学习。微软的 MSDN 网站足以深入自学 C # 吗?…

    2022-11-23 08:49:06
    0 18 57
  • 会c语言学python要多久:机器学习、人工智能和计算语言学

    关于会c语言学python要多久的问题,在linguistics and artificial intelligence中经常遇到,我很想和那些在机器学习、计算语言学或人工智能方面有经验的人谈谈,但通过下面的例子:…

    2022-11-23 08:41:16
    0 81 31
  • 并且c语言:C语言是中级语言吗(c is high level language)

    关于并且c语言的问题,在c is high level language中经常遇到,在编程语言讨论中,我们听到诸如低级,中级和高级之类的术语。这些是如何确定的?C 会被视为中级语言吗?…

    2022-11-23 08:38:10
    0 29 61

发表评论

登录 后才能评论

评论列表(7条)