연결리스트 소스좀봐주세요..
후회중
질문 제목 : 자료구조 알파벳 ..연결리스트출력문 정리좀 해주세요질문 내용 :
문자열을 받아서 a - b - c 이렇게 나오도록 하는 소스인데요, 삽입삭제가능하게 하는건데
처음에 12345중에 하나를 누르잖아요
만약에 1을 눌렀으면 문자열 입력 이렇게 뜨고 또 어떤 문자열을입력할 수 있게 되잖아요
근데 어떤문자열을 입력할거니?이게 아니라 어떤번호를 누를거니? 또 이렇게나와요..ㅠㅠ
근데 여기서 a를 누르면 문자열이 들어가긴들어가는데
출력문이나 메인에서 문제가있는거같은데
도무지모르겠네요
제발 도와주세요..
#include stdio.h #include stdlib.h
struct node *head;
struct node{int num;char data;struct node *link;};
struct node *insert(struct node *pre, char data1){struct node *i;i=(struct node*)malloc(sizeof(struct node));i-data=data1;if(head==null){head=i;i-link=null;}else{i-link=pre-link;pre-link=i;}return (i);}
struct node printlist(){struct node *pt, *pt1;char character;printf(%c , head-data);pt=head;while(pt-link!=null){pt1=pt-link;pt=pt1;printf(- %c , pt-data);}printf(\n\n);}void listdelete(){struct node *f, *m, *r;int i;printf(what do you want to delete? : );scanf(%d, &i);printf(\n);f=m=head;m=m-link;do{if(f-data==i){m=f-link;head=m;free(f);break;}else if(m-data==i){r=m-link;f-link=m-link;free(m);break;}f=f-link;m=m-link;}while(1);}
void main(){int num;char character;struct node *pre;head=pre=null;do{printf(1. input character \n);//printf(2. input between numbers \n);printf(3. print character in list \n);printf(4. delete character \n);printf(5. exit \n);printf(\n\nselect number : );scanf(%d, &num);{if(num==1){printf(what do you want character? : );scanf(%c, &character);pre=insert(pre, character);printf(\n);}/*else if(num==2){if(head==null){printf(not exist number in space \n\n);}else{betweenlist();}}*/else if(num==3){if(head==null){printf(not exist number in space \n\n);}else{printlist();}}else if(num==4){if(head==null)printf(not exist number in space \n\n);elselistdelete();}/* else (num==5);{return 0;}*/} } while(num!=5);}