게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[c언어]반복문이 이상하게 끝나요...
게시물ID : computer_90710짧은주소 복사하기
작성자 : 등교의고통
추천 : 0
조회수 : 231회
댓글수 : 1개
등록시간 : 2013/06/02 20:13:20

#include <stdio.h>
#include <stdlib.h>

typedef struct Node
{
 char str[100];
 Node * next;
}Node;
Node * head;
void insert(int c);
void del();
void move();
void exchange();
void show(int c);

int main()
{
 int N,x,i=0,c;
 char a;
 
 scanf("%d",&N);
 if(1<=N&&N<=1000)
 {
  while(i!=N)
  {
   scanf("%c",&a);
   scanf("%d",&c);
   switch(a)
   {
   case 'I':
    {
     insert(c);
     break;
    }
   case 'D':
    {
     break;
    }
   case 'M':
    {
     break;
    }
   case 'E':
    {
     break;
    }
   case 'S':
    {
     show(c);
     break;
    }
   }
   i++;
  }
 }
 else
 {
  return false;
 }


 return 0;
}


void insert(int c)
{
  int n=0;
  Node *p , *m;
  p = (Node*)malloc(sizeof(Node));
  p->next=NULL;
  scanf("%s",&p->str);
  if( head == NULL )
  {
        head  = p;
  }
     else
     {
        m = head;
  while(m->next!=NULL)
  {
            m = m->next;
   if(n==c)
   {
    m->next = p;
    return;
   }
   n++;
  }
       
     }
}

void show(int c)
{
 int n=1;
 Node * m;
  m = head;
 while( n!=c )
  {
            m = m->next;
   n++;
  }
 printf("%d:%s\n",n,m->str);
}

 

아직 미완성 이지만 리스트를 구현해서 자기가 원하는 위치에 노드를 삽입,삭제 교환하는 프로그램인데요 일단 삽입이랑 보기만 구현했고 이 프로그램이 처음에 실행할 명령개수를 정해놓도록 하더라구요(프로그램이 채점하는거라..)그래서 맨처음에 실행할 명령개수를 N이라 해놓고 while문 돌렸는데 2넣으면 한번만 돌고 끝나고 4넣으면 2번 5넣으면 3번 돌고 끝나내요....대체 왜이런거죠

전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호