โดยใช้การให้เหตุผล ในคำสั่ง 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