如何格式化 table ,如 C 中所示

How do I format a table like shown in C

我必须像这样打印数字

table

赋值“第一个数字在 5 个空格中右对齐打印,然后是一个冒号 打印然后步数写为 5 个空格中的左对齐数字

我现在的代码打印出这样的数字

    3:7    4:2    5:5    6:8    7:16    8:3    9:19   10:6
   11:14   12:9   13:9   14:17   15:17   16:4   17:12
   18:20   19:20   20:7

这是打印 table 的代码。

void makeTable(int start, int end) {
  for(int i = 0; i<=end-start; i++) {
    printf("%5d:%d", i+start, hofpo(i+start));
    if(i>0 && i % 7 == 0) {
      printf("\n");
    }
  }
  printf("\n");
}

如何以需要的格式打印数字?

我给新人总结的意见:

#include <stdio.h>
#include <stdlib.h>

void makeTable (int, int);

int main (int argc, char * *argv, char * *envp) {
    makeTable(5, 35);
    return (EXIT_SUCCESS);
}

void makeTable(int start, int end) {
    for(int i = 0; i<=end-start; i++) {
        printf("%2d:%-3d", i+start, i+start-3);
        if(i>0 && (i+1) % 7 == 0) {
            printf("\n");
        }
    }
    printf("\n");
}