C语言中如何对齐输出

Python018

C语言中如何对齐输出,第1张

printf ("编号\t数量\t价格\t名称du\n")

用\t隔开输入的信息名称,在输入的时候,每输入一个数就tab一下,就可以对齐了。

换码符'\t',表示水平制表位(horizontal tab),它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。换句话说,让所有的数据都紧跟在制表符后面输出。

#include <stdio.h>

#include <string.h>

int main()

{

int a,b

scanf("%d %d", &a,&b)

printf("%s\n","Octal Decimal Hexadecimal")

printf("%*o %*d %*x\n%*o %*d %*x",-strlen("Octal"),a,-strlen("Decimal"),a,-strlen("Hexadecimal"),a,-strlen("Octal"),b,-strlen("Decimal"),b,-strlen("Hexadecimal"),b)

return 0

}

扩展资料:

printf()函数是式样化输出函数, 一般用于向准则输出设备按规定式样输出消息。正在编写步骤时经常会用到此函数。printf()函数的挪用式样为: printf("<式样化字符串>",<参数表>);

其中式样化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出;另一部分是式样化规定字符, 以"%"开端, 后跟一个或几个规定字符, 用来确定输出内容式样。 参量表是需求输出的一系列参数, 其个数务必与式样化字符串所阐明的输出参数个数一样多, 各参数之间用英文逗号","分开, 且顺序逐一对应, 不然将会出现意想不到的错误。

参考资料来源:百度百科-printf()

有两种方法可以做到:

1 用制表符\t实现对齐。

制表符\t输出的时候,会移动输出光标,实现对齐效果。所以可以在输出的对应位置,增加\t来实现对齐。

要求每行相同列输出占用空间差别不可以太大。

2 在格式字符中加入占用宽度控制数字。

C语言使用printf输出时,每个控制字符均可以写成

%nC的形式,如%10d, %12f, %8c, %16s等等。

其效果就是输出对应变量时占用n个字符的宽度。不足部分左侧补空格。通过这种方式,可以实现右对齐效果。

如果要实现做对齐效果,只需要在宽度字符前加-符号即可,如%-8s,就是把字符串输出,占8位宽度,右侧补空格。