我需要用C來寫一個函數,給定一個指針鏈表,將打印出Python語法元素:例如對於由1,2,3,4和5組成的列表,該功能將打印出[1,2,3,4,5]。Ç - 使用遞歸打印鏈表
我試圖寫的代碼如下:
struct node {
struct node *next;
int data;
};
void print_list(struct node *list) {
printf("[");
if (list == NULL) {
printf("]");
} else {
printf("%d", list->data);
if (list->next != NULL) {
printf(", ");
}
print_list(list->next);
}
}
輸出看起來像這樣:[1,[2,[3,[4,[5 []
據我所知,每函數調用自己的時間,「[」將被打印。有沒有辦法在第一次調用函數時打印「[」?
如何在打印之前激活調用遞歸函數? – Ctx
像之前調用void print_list? –
是的。第二個選項,添加一個標誌,告訴您該parmeters如果你要打印托架 – CIsForCookies