[問題] 迴圈問題

看板C_and_CPP作者 (james)時間15年前 (2010/05/26 11:29), 編輯推噓1(104)
留言5則, 2人參與, 最新討論串1/2 (看更多)
我想請問為什麼我寫的下列程式不會一直重覆跑回圈? 我實在抓不出bug @@a #include<stdio.h> #include<stdlib.h> struct data { int ID; char name[10]; int score; struct data *next; }; struct data *insert_data(struct data *); struct data *print_data(struct data *); main() { int i,ch; struct data *head=NULL; do{ printf("choose 1.insert 2.print\n"); scanf("%d",&i); switch(i) { case 1: head=insert_data(head); break; case 2: break; default: //exit(1); printf("!!\n"); } // printf("continous?\n"); //scanf("%d",&ch); }while(i!=0); } struct data *insert_data(struct data *head) { struct data *new_node; printf("Input data\n"); new_node=(struct data *)malloc(sizeof(struct data)); printf("ID:\n"); scanf("%d", new_node->ID); printf("name:\n"); scanf("%s", new_node->name); printf("score:\n"); scanf("%d",new_node->score); new_node->next=head; head=new_node; return head; } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.47.74.20

05/26 11:43, , 1F
你的i是多少@@
05/26 11:43, 1F

05/26 11:43, , 2F
看到了XD
05/26 11:43, 2F

05/26 11:46, , 3F
如果不會跑 可能是insert有錯誤
05/26 11:46, 3F

05/26 11:49, , 4F
試了一下..do while那邊正常..不過insert_data有錯就是
05/26 11:49, 4F

05/26 11:51, , 5F
insert的scanf少了&
05/26 11:51, 5F
文章代碼(AID): #1B_9MIm8 (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1B_9MIm8 (C_and_CPP)