當前位置:編程學習大全網 - 編程軟體 - C程序問題求解:小弟編程遇到問題,請高手指點,謝謝!

C程序問題求解:小弟編程遇到問題,請高手指點,謝謝!

兩個錯誤:

1.

表尾結點的next指針沒有賦值,導致指向野地址

2.

while循環多了壹個;

改了以後的:

typedef struct note

{int num;

struct note *next;}stu;

main()

{stu *r,*s,*head;

int i,k=1;

void fun(stu *head);

void add(stu *head);

head=r=(stu *)malloc(sizeof(stu));r->num=k++;

for(i=0;i<10;i++)

{s=(stu *)malloc(sizeof(stu));

r->next=s;

r=s;

s->num=k++;

s->next=NULL;/////////Erro1

}

fun(head);

add(head);

fun(head);

}

void fun( stu *head)

{stu *r=head;

if(head->next==NULL) printf("have a error");

else

{printf("head");

while(r->next!=NULL)/////////Erro2

{printf("->");

printf("%d", r->num);

r=r->next;}

}

}

void add(stu *head)

{stu *q,*p;

q=head->next;

head->next=NULL;

while(q)

{p=q;

q=q->next;

p->next=head->next;

head->next=p;}

}

  • 上一篇:恒星2006d電腦橫機編程基礎操作
  • 下一篇:買了壹只名字很好聽的大Whippy狗怎麽辦?
  • copyright 2024編程學習大全網