>> Read No. 35202 article  
c언어인데 여기에 올려서 죄송합니다. 근데 몰라서
리..고수님 부탁

등록 2001-11-17 17:50:00     조회 1
이름 하수    

		안녕하세요.. 이것갖고 거의 24시간을 소비했더니 죽음입니다.
잘못된 부분좀 찾아주세요...
 더불 링크리스트를 여러개 만들어서 nmae과 data를 넣는 프로그램입니다.그리고 출력 하는 
거져.. 그런 데.. 1개를 만들면 아무 이상이 없는데
2개 이상을 만들게 되면. 마지막의 링크리스트의 name이 다른 링크리스트의 name값에 덮어집
니다. 즉 1번 의 name이 a 이고 2번 name b라고 입력하면 1번 이름도 b 2번 이름도b가 됩니다. ㅡ
ㅡ; 고수님들의 가르침 부탁합니다. 링크리스트 처음 쓰는데 넘 복잡하네요.
쏘스입니다. 꼭 아시는분은 가르쳐 주세요..
         typedef struct ch_node *ch_ptr;
typedef struct ch_node { ch_ptr llink;char *data; ch_ptr rlink;};
  ch_ptr creat(int h);
void prints(ch_ptr para);
int len(ch_ptr para);
   
     
void main()
{
    ch_ptr sptr[20]; //각 링크리스트를 가르키는 주소값을 저장합니다.
    ch_ptr para;     //함수간 전달때 사용함
    int menu,i;
    char *sname;     //찾을 name을 입력받을 포이터
    int h=0;
      for(;;)
   {
    printf (" selcet command");      //메뉴
    printf("1: creat 2: lenth 3: copy 4:  cocat");
    printf("5: index 6: substr 7: first 8: printfs 0:exit ->");
     scanf("%d",&menu);
      switch (menu)
    {
        case 1:  링크리스트 생성
                sptr[h]=creat(h); 생성된 링크리스트의 주소 값을 전달 받는다.
            h++; 다음 번 링크리스를 생성하면 두번째 3번째 배열에 넣기 위해
                            break;
       
                        para=sptr[i];
            printf("%d",len(para));
            break;
                   
         case 8: printf("%s",sptr[0]->data);
            printf("%c",sptr[0]->rlink->data);
            printf("%s",sptr[1]->data);
                        printf("%c",sptr[1]->rlink->data);
            printf("input the string name");
            scanf("%s",sname);
                             
             for(i=0;i<21;i++)
             {
                   if (strcmp(sptr[i]->data,sname));  찾는 이름과 같은 링크리스트를 찾음
     
                     else break;
              }
             if(i==21)
            {
                printf("You have the wrong name");
                exit(1);
            }
                    para=sptr[i];
            prints(para);
                        break;
                     
         case 0:
            printf("Thank you for using my software bye-bye");
                        exit(0);
      }             
   }
    }
 ch_ptr creat(int h)
{
     char *name;
    char sam[20];
    int i;
        ch_ptr sptr[20];
      printf("input name& string");
    scanf("%s",name);
    scanf("%s",sam);
     ch_ptr temp, temp1;
     temp=(ch_ptr)malloc(sizeof(ch_node));// name을 입력 받을 노드 생성
      if(IS_FULL(temp))
    {
        fprintf(stderr,"THE MEMORY IS FULL");
        exit(1);
    }     
    temp->data=name;
    sptr[h]=temp;
    temp->llink=temp; temp->rlink=temp;
     for(i=0;sam[i]!='';i++)     //charcater를 입력 받을 노드들..
    {
        temp1=(ch_ptr)malloc(
sizeof(ch_node));
        if(IS_FULL(temp1))
        {
         fprintf(stderr,"THE MEMORY IS FULL");
    
     exit(1);
                 }
        temp1->data=(char *)sam[i];
         temp1->rlink=temp->rlink
;
        temp->rlink=temp1;
        temp1->llink=temp;
                temp->rlink->llink=temp1;
    
    temp=temp1;
    }
       return (sptr[h]);
                
}
    void prints(ch_ptr para)       
선택된 링크리스트 출력
 {
    ch_ptr ltemp;
    ltemp=para->rlink;
    for(;ltemp!=para;ltemp=ltemp->rlink
)
   {
    printf("%c",ltemp->data);
   }
이름
암호


>> 관련글
35202 c언어인데 여기에 올려서 죄송합니다. 근데 몰라서리..고수님 부탁  하수  2001.11.17  ....
  답장 RE: c언어인데 여기에 올려서 죄송합니다. 근데 몰라서리..고수님 부탁  NB  2001.11.18  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.48 초 ] 작업시간: [ 0.14 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1789501977
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.