프로그래밍

 3198, 1/160 회원가입  로그인  
   메버리키
   [C언어] 간단한건데 감이안와요.. 힌트라도좀 주세요..

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=3052 [복사]


연결리스트를 공부하고있는데요
그부분은 문제가아니고

메인부분에서

"1은 입력 2는 삭제 3은 출력 입니다." 를 출력하고
cin>>input; 해서
if (input==1){ while(cin>>input && input !=0) s.insert(input);
}
if (input==2){ while(cin>>input && input !=0) s.remove(input);
}
if (input==3){ s.print();
}
물론 위에 클래스는 다정의되어있구요..

이런식으로하다가 0을 입력받으면 입력 삭제 출력을 고르는 부분으로 올라가고싶거든요
어떻게하면 될까요 쉬울것같은데 감이안오네요

  Hit : 4043     Date : 2011/06/11 07:54



    
clockmaker cin 이나 클래스를 쓰면 C++이죠;;
if문들 여러 개를 통째로 while(1)에 넣어놓고
각각의 실행에 break;를 추가해주시면 됩니다.
0일 경우 1,2,3이 아니니 다시 while을 돌겠죠.
2011/06/11  
profreez bool bQuit = false;
while(bQuit == false)
cin>>input;
if (input==1){ while(cin>>input && input !=0) s.insert(input);
}
if (input==2){ while(cin>>input && input !=0) s.remove(input);
}
if (input==3){ s.print();
}
if(input == 4)
bQuit = true;
}

이런식이면 위로 갈수 있지 않을까요?
2011/06/11  
늅늅 C언어인줄 알고 클릭했다가
C++길래 다시 나가는 늅늅..
2011/06/12  
stares 추천할만한것은 아니지만..
정 모르시겟다면 goto문을 사용하는것도 ..
2011/06/12  
영원한공부 그리고 비교연산자를 == 만 사용하신다면 switch문 쓰는게 더 깔끔해 보여요.

switch(input)
{
case 1:
   while(cin>>input && input !=0) s.insert(input);
   break;
case 2:
   while(cin>>input && input !=0) s.remove(input);
   break;
case 3:
   s.print();
   break;
}
   
이게 더 나은듯
2011/06/12  
메버리키 전 전부다 while(1) 안에 while(a!=3) 안에넣어버리고 프린트함수 에다가 bbrreeaakk;;넣어서 해결했어요.. 2011/06/13