-1
我爲學生寫了一個小型數據庫。從終端獲取數據後,我想將這些數據打印在一張漂亮的表格中。此表看起來像:在linux終端裏打印一張漂亮的桌子
lastname|firstname|enrollement nr|subject|nationality.
但我無法打印整行數據。這意味着如果我想打印關於一名學生的信息,數據將被分成兩行。表格的標題不會被拆分,但表格的每一行都會被拆分。下面是代碼:
void display_db(){
printf("lastname|firstname|enrollement nr|subject |nationality\n");
printf("========================================================\n");
int i;
for(i=0;i<SIZE;i++){
printf("%10s|%10s|%10d|%10s|%10s\n",
(db+i)->lastname,(db+i)->firstname,(db+i)->mNr, (db+i)->subject, (db+i)->nationality);
}
}
下面的圖片:
刪除特殊字符 '\ n' 之後,我修改了代碼打印表格。桌子現在很漂亮。下面是代碼:
void display_db(){
printf("%10s|%10s|%10s|%30s|%10s\n","lastname","firstname","enroll. nr","subject","nationality");
printf("========================================================\n");
int i;
for(i=0;i<SIZE;i++){
printf("%10s|%10s|%10d|%30s|%10s\n",
(db+i)->lastname,(db+i)->firstname,(db+i)->mNr, (db+i)->subject, (db+i)->nationality);
}
}
Aparently在'字符串(分貝+ I)拆下其後的換行符 - > subject'終止用換行符號。 – Havenard
我想知道分開主題和國籍的'|'。啊!過多裁剪 – pmg
只有'subject'標題長度爲10個字符,ret可以更短或更長。難怪沒有什麼與所有數據項目重複的「%10s」一致。 – usr2564301