gpt4 book ai didi

c - 打印单链表

转载 作者:太空宇宙 更新时间:2023-11-04 01:34:39 24 4
gpt4 key购买 nike

我对这个函数有疑问。当我调用它时,客户应该从最后一个(尾部)打印到第一个(头部)。

问题是我想从第一个(头)到最后一个(尾)打印它们。我尝试过的所有方法要么导致段错误,要么只打印第一个客户端。

请注意,该程序是关于一家银行的。我有一列客户,我想按顺序打印。

提前致谢!

void printAll(clientData* tail) {
clientData *current;
current = tail;
if (current == NULL) {
printf("There is no client in queue\n");
return ;
}
while (current != NULL) {
printf("%s %s %d/%d/%d %s %s %s %s\n",
current->firstname,
current->lastname,
current->birthday.day,
current->birthday.month,
current->birthday.year,
current->bankaccount,
current->telephone,
current->email,
current->bankcommand);

current = current->next;
}
return;
}

最佳答案

你需要的是一个堆栈。当您递归调用函数时,您的系统会自动为您提供一个:

void printAll(clientData* current)
{
if (current->next != NULL) {
printAll(current->next);
}
printf("%s %s %d/%d/%d %s %s %s %s\n", current->firstname,current->lastname,current->birthday.day,current->birthday.month,current->birthday.year,current->bankaccount,current->telephone,current->email,current->bankcommand);
}

关于c - 打印单链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16721718/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com