연결리스트 삭제,삽입
매미꽃
질문 제목 : 연결리스트에서 삭제와 삽입질문 요약 :연결리스트를 이용해서 단어장외우는 프로그램 짜기
1.파일 입출력 사용
2.영단어와 그 단어의 뜻을 연결리스트를 이용해서계속 입력받고 0을 입력하면 그만 입력받은후 출력 하고
삭제할 단어 입력하면 삭제.
3.영 단어 하나씩 출력한후 맞으면 O출력 아니면 X출력
질문 내용 :
#include stdio.h
#include malloc.h
struct Node
{
struct Node* Next;
char eData[100];
//char kData[100];
};
struct Node* Start;
struct Node* End;
void Input(char Start_Data,char Input_Data)
{
FILE *a;
a=fopen(C:\\ccc.txt,r+);
struct Node* tmp = NULL;
Start = (struct Node*)malloc(sizeof(struct Node));
End = Start;
Start-eData = Start_Data; //(*Start).eData = Start_Data
End-Next = NULL;
printf(\n입력\n\n);
while(1)
{
tmp = (struct Node*)malloc(sizeof(struct Node));
printf(영 단어 입력(0=종료) : );
scanf(%s,tmp-eData);
fprintf(a,%s\n,eData);
/*
printf(한글 뜻 입력 : );
scanf(%s,tmp-kData);
*/
End-Next = tmp;
tmp-eData = Input_Data;
tmp-Next = NULL;
End = tmp;
if(tmp==0)
{
break;
}
}
fclose(a);
}
void Output()
{
FILE *a;
a = fopen(C:\\ccc.txt,r+);
char b;
printf(\n출력\n\n);
while(!feof(a))
{
fscanf(a,%s,&b);
printf(%s,b);
}
}
void main()
{
int want;
while(1)
{
printf(입력 = 1\n);
printf(출력 = 2\n);
printf(원하는 것 : ); scanf(%d,&want);
if(want==1)
{
Input();
}
else if(want==2)
{
Output();
}
else
{
printf(1과 2만 입력하시오\n);
break;
}
}
}
연결리스트 이해를 잘 못해서..
뭐가 잘못 된지도 잘 모르겟네요;
쉽게 설명좀 해주세요ㅜ 정답도좀 ㅜ