โดยใช้การให้เหตุผล ในคำสั่ง printf เราสามารถจัดเรียงข้อมูลในรูปแบบใดก็ได้
การให้เหตุผลที่ถูกต้อง
หากต้องการใช้การให้เหตุผลที่ถูกต้อง ให้ใส่เครื่องหมายลบก่อนค่าความกว้างในอักขระ %s
printf("%-15s",text);
โปรแกรมที่ 1
มาดูตัวอย่างการพิมพ์ข้อมูลในแถวและคอลัมน์โดยใช้เหตุผล
#include<stdio.h> 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
โปรแกรม 2
ลองพิจารณาตัวอย่างเดียวกันโดยเปลี่ยนเหตุผล −
#include<stdio.h> 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