본문 바로가기
language/C

continue / break / 삼항연산자

by abstract.jiin 2022. 9. 13.

 

  1. continue / break
  2. 삼항연산자

 

1. continue / break

continue


진행중인 반복문에서 다음 반복으로 넘어가는 코드 
(남은 코드를 동작시키지 않고 다음 반복을 진행)

 

 

break

switch, for, while에서 사용(if에는 적용 X)
break문에 가장 가까운 제어문 종료
 


 

continue를 만나면 하위에 있는 코드를 생략하고 반복문의 처음으로 다시 돌아간다

int val =0;
	
while (val <10) {
	val++;
	if(val%7==0) {
		puts("jump!!");
		
		continue;
		
	}
	printf("%d\n",val);
}

/* 결과 */

 1
 2
 3
 4
 5
 6
 jump!!
 8
 9
 10


break; 를 만나면 반복문을 빠져나간다.

	for(int out =1; out <=3; out++){
	
		printf("%d 회전 :",out);
		for (int in =1; in <= 10; in++){
			printf("%d",in);
			if(in==5)
			break; 
		}
		puts("");
	}

/* 결과 */
 1 회전 :12345
 2 회전 :12345
 3 회전 :12345


	int val=0;
	while(1) { //무한정 반복 
		puts("3X1=?에 맞는 답은?");
		printf("1.3\t2.13\t3.23\t4.33\t5.43\n선택>>");
		scanf_s("%d",&val);
		puts("");
		
		if(val==1){
			puts("정답입니다");
			break; 
		} 
		puts("틀렸습니다");
		
	}

/*결과 */

3X1=?에 맞는 답은?
1.3     2.13    3.23    4.33    5.43
선택>>2

틀렸습니다
3X1=?에 맞는 답은?
1.3     2.13    3.23    4.33    5.43
선택>>3

틀렸습니다
3X1=?에 맞는 답은?
1.3     2.13    3.23    4.33    5.43
선택>>1

정답입니다

 

3. 삼항연산자

 

if~else문에서 간단한 연산식만 동작될 때 
if~else문을 대체하여 사용 가능한 연산자 

변수 =(조건식)? 코드1:코드2

조건이 참이면 ? 뒤의 코드 1이 진행, 조건이 거짓이면 :뒤의 코드 2 진행
 

삼항연산자를 활용한 절대값 구하기 

	int data, abs=0;
	
	printf("숫자 입력: "); scanf_s("%d",&data);
	
	if(data >0)
		abs=data;
	else
		abs=data*-1;

	abs=(data>0)?data:data*-1;
	printf("절대값 : %d\n",abs);

'language > C' 카테고리의 다른 글

배열(array)  (0) 2022.09.13
_sleep(숫자) - 반복문 응용  (0) 2022.09.13
C언어 자판기 코드  (0) 2022.09.07
반복 제어문 while  (0) 2022.09.07
반복 제어문 for  (0) 2022.09.07