C语言中如何使用justifications对齐输出?
通过在printf语句中使用对齐 ,我们可以以任何格式排列数据。
正当理由
要实现正确对齐,请在%s字符的宽度值前插入一个减号。
printf("%-15s",text);
方案一
举个例子,在对齐的帮助下,按行和列打印数据。
#include输出结果int main(){ char a[20] = "Names", b[20]="amount to be paid"; char a1[20] = "Bhanu", b1[20]="Hari",c1[20]="Lucky",d1[20]="Puppy"; int a2=200,b2=400,c2=250,d2=460; printf("%-15s %-15s\n", a, b); printf("%-15s %-15d\n", a1,a2); printf("%-15s %-15d\n", b1,b2); printf("%-15s %-15d\n", c1, c2); printf("%-15s %-15d\n", d1, d2); return 0; }
Names amount to be paid Bhanu 200 Hari 400 Lucky 250 Puppy 460
方案二
通过改变理由来考虑相同的例子-
#include输出结果int main(){ char a[20] = "Names", b[20]="amount to be paid"; char a1[20] = "Bhanu", b1[20]="Hari",c1[20]="Lucky",d1[20]="Puppy"; int a2=200,b2=400,c2=250,d2=460; printf("%2s %2s\n", a, b); printf("%5s %5d\n", a1,a2); printf("%2s %2d\n", b1,b2); printf("%5s %5d\n", c1, c2); printf("%2s %2d\n", d1, d2); return 0; }
Names amount to be paid Bhanu 200 Hari 400 Lucky 250 Puppy 460 Note: Alignment is note in proper if we not use correct justification