본문 바로가기

분식집/해킹..!?

2주차 C언어

제어문

=>프로그램의 실행 흐름을 제어하기 위한 문법.

(*기본적으로 C언어의 실행 구조는 위에서 아래로 흐르는 문법인데

제어문을 통해서 이 실행 흐름을 개발자가 원하는 대로 조정할 수 있게 됨!!)

 

조건문

1)If문

=>조건의 참, 거짓 여부의 판단을 통해 실행 흐름을 제어하는 구조를 말함.

=>조건문의 내용이 참일 경우 해당 명령을 실행하게 됨.

if(조건문)

{

실행할 명령

}

 

+

else if(조건문 2)

{

실행할 명령2

}

..

else

{

실행할 명령3

}

 

 

 

2)switch문

=>값이 일치하는 블록을 실행하는 조건문.

 

switch(변수(ex. num))

{

case 1:

break;

 

case 2:

break;

 

case 3:

break;

 

default:

break;

}

//break는 조건문을 탈출해 주는 역할을 하는데.

break가 없다면 모든 switch문을 다 실행하게 되버릠..

 

 

**멍청한 계산기 문제.

scanf 함수를 사용할 경우 Enter키가 버퍼에 남아서 다음 scanf함수에 제대로된 입력이 남지 않음.

 

Enter , 공백문자가 아스키 코드의 정수 "10"인데, scanf 에 10이 저장되어 버린 것.

 

=>해결 방법

1.화이트 스페이스 사용.

=>scanf에서 데이터를 입력받을때 사용하는 데이터의 경계를 나누는

(space bar, Tab, enter)키를 말함.

 

"%c" 라고 사용하는 것이 아닌,  " %c"라고 사용하는 것.

이외에도

 "\n%c", "\t%c"와 같은 방식으로도 사용이 가능함.

 

 

 

2.%*c사용

=>입력은 받지만 저장은 하지 않는 것으로

scanf("%c"); 라고 작성하여 enter값을 입력 받지만 저장하지 않게 만드는 것.

 

 

3.getchar()함수 사용.

=>문자 전용 입력함수로, 버퍼에 남아있던 enter 값을

getchar()함수가 사용한 후 버퍼를 비우게 만드는 것.

 

 

 

 

반복문

1)while문

=>조건이 참일 경우 휘하의 코드를 반복해서 실행함.

while(조건)

{

수행할 명령

}

 

2)do~while문

do

{

실행할 명령

}

while(조건문)

 

먼저 1회 실행을 한다는 장점이 있음.

 

 

3)for문

for(초기식; 조건식; 증감식;

{

실행할 명령

}

 

Ex. for (num=0; num<3 ; num++)

{

printf("Hi D");

}

 

 

 

무한 루프

1)

for( ; ; )

{

}

 

2)

do

{

}

while(1);

 

3)

while(1)

{

}

 

 

'분식집 > 해킹..!?' 카테고리의 다른 글

웹-3주  (0) 2023.03.31
웹 문제 풀면서 배운 것!  (0) 2023.03.31
텐서플로우 개론!-코딩애플님 유튜브 정리  (0) 2023.03.24
리버싱이란?  (0) 2023.03.24
Web-First  (0) 2023.03.17