2014-10-10 5 views
-4

C 프로그래밍에서 루프를 사용하여 10 개의 숫자를 표시하고 싶지만 두 번째 숫자 5와 7은 continue 문을 사용하여 표시하고 싶지 않습니다. 내 코드는 있지만 결과가 없습니다. 오류가오고있다. 나는 당신의 질문을 이해하면C에서 여러 개의 continue 문을 검사하는 방법

int j = 10; 
for(i=1,i<=j; i++){ 

if(i==5)(i==7) 
{ 
continue; 
printf("%d",i); 
} 

} 
+2

'for'루프가 잘못되었습니다. 'if' 문은 의미가 없으며 중괄호 안에'continue'의 위치도 없습니다. "컴파일러 오류"는 무엇입니까? 유효한 실행 파일입니까? – usr2564301

답변

4

, 당신은 논리적이고 사용할 수, ||

if(i==5 || i==7) 
{ 
    continue; 
} 
printf("%d",i); 

또는 논리적를 사용하거나 &&

if (i!=5 && i!=7) 
{ 
    printf("%d",i); 
} 
+0

감사합니다. 예, 찾고 있습니다. – user3164590

+1

+1 De Morgan의 법칙을 적용한 경우 :-) –

0

내가 해결하는 또 하나의 방법을 추가 할 위의 문제. 내 접근 방식입니다 : 루프 및 1-4 인쇄 및 다음 6 인쇄 및 8-10 인쇄 루프. 이런 식으로.

for(int i=1;i<=4;i++)printf("%d",i); 
printf("6"); 
for(int i=8;i<=10;i++)printf("%d",i); 

희망이 도움이됩니다. 그러나 나에게 엘리엇의 해결책은 합법적이고 좋은 것으로 보입니다.

관련 문제