l◆◆◆lº 250问问
无数时间线,无尽可能性,终于交织向你
关注数: 36 粉丝数: 31 发帖数: 5,848 关注贴吧数: 265
跪求,链表相关问题 #include <stdio.h> #include <string.h> #define MAXLEN 16 struct arashi { char name[MAXLEN]; int nenrei; double shincho; struct arashi *next; struct arashi *prev; }; void print(struct arashi *); void dattai(struct arashi ); int main() { struct arashi a, r, s, h, i; strcpy(a.name, "Aiba"); strcpy(r.name, "Ninomiya"); strcpy(s.name, "Matsumoto"); strcpy(h.name, "Oono"); strcpy(i.name, "Sakurai"); a.nenrei = 37; r.nenrei = 37; s.nenrei = 37; h.nenrei = 39; i.nenrei = 38; a.shincho = 176.0; r.shincho = 168.3; s.shincho = 173.8; h.shincho = 166.5; i.shincho = 171.2; /**************** 10 lines */ a.next=&r; r.next=&s; s.next=&h; h.next=&i; i.next=NULL; i.prev=&h; h.prev=&s; s.prev=&r; r.prev=&a; a.prev=NULL; /****************/ printf("hitori nuketa\n"); dattai(r); print(&a); printf("\nfutari nuketa\n"); dattai(h); print(&a); return 0; } void print(struct arashi *f) { struct arashi *b; while (f!=NULL) { printf("%-9s [%d, %.3f]\n", f->name, f->nenrei, f->shincho); b=f; f=f->next; } putchar('\n'); while (b) { printf("%-9s [%d, %.3f]\n", b->name, b->nenrei, b->shincho); b=b->prev; } } void dattai(struct arashi x){ } 求助,dattai这个函数是用来把输入的节点删除的 最后输出要求这样 hitori nuketa Aiba [37, 176.000] Matsumoto [37, 173.800] Oono [39, 166.500] Sakurai [38, 171.200] Sakurai [38, 171.200] Oono [39, 166.500] Matsumoto [37, 173.800] Aiba [37, 176.000] futari nuketa Aiba [37, 176.000] Matsumoto [37, 173.800] Sakurai [38, 171.200] Sakurai [38, 171.200] Matsumoto [37, 173.800] Aiba [37, 176.000] 只能修改dattai内部,跪求大佬解惑
首页 1 2 下一页