#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;
}
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){
}
dattai是删除数据的函数
要求除了dattai任何地方都不能修改,最后输出如图
跪求大佬解惑