C언어

C언어 while문과 for문

5_jinseok12 2018. 1. 10. 23:21
728x90

우선 while문에 대해 알아보자

 

while문은

while(조건식){조건식이 참일 때 수행할 문장} 이런식이다. if 문하고 거의 비슷하다고 보면 된다.

하지만 다른점이 있다면 거짓이 나타날 때 까지 계속 반복한다는 것이다.

 

i는 1로 초기화를 시켰을 때

while(i<=50)  : 이것을 조건식이라고 한다.

i가 1부터 50이 될때까지 1부터 50까지 출력하는 것이다,

i = i+1 을 증감식이라고도 한다, 대입연산자와 산술연산자 2개 사용(=,+)

 

 

이러한 결과값을 알 수 있다.

 

 

조금 더 응용해서 이제 1부터 50까지의 숫자중에 홀수만 출력해보자

 

 

 

똑같은 조건에서 i +=1을 i+=2로 수정해서

i가 1부터 2씩 증가하도록 만들어본다. 1,3,5,7...49까지 증가하는것을 알 수 있다.

 

 

 

 

이제 for문을 알아보자

 

 

for문은 () 안에 초기식; 조건식; 증감식이 들어가고 {} 안에 조건식이 참일 때 실행하는 문장이 들어가야한다.

증감식이란 증가하고 감소하는 것을 말한다.

 

 

이 문제는 for문의 가장 기초이다.

여기서 i=1이 초기식이고 i<=100은 조건식 i++은 증감식이다.

해석해보자면 i는 1일때 100이 될때까지 1씩 증가한다는 의미이다.

 

 

 

 

위에 했던 100까지 출력과 같은 방식이다.

 

 

자동적으로 2단부터 9단까지의 구구단을 만들어보았다.

num = 2 일때 i는 1 ~ 9까지 이며 둘이 곱한 값을 출력한다.

그렇게 num이 2일때 i가 9에 도달하면 num 은 3으로 넘어가고 i는 다시 1부터 시작하여 9가 될때까지 곱한다.

num이 9가 될때 까지 계속 반복한다면 2단부터 9단까지의 구구단은 완성된다.

 

 

 

 

 

 

변수를 sum과 k로 정해보자.

 

for문을 사용하기 전에 sum 을 0으로 초기화시킨다.

그렇지않으면 쓰레기값이 출력된다.

for문에서 초기값 k=1; 조건값k<=100; 증감식 k++ 일 때

sum +=k

이 식은 sum = sum+k 를 의미한다. (누적)

 

sum=0일때 k=1이기 때문에 sum=1부터 증가하게 되고

1+2+3+....100 이 되는것이다. 그러므로 출력값은 5050이 된다.

 

 

이제 내가 원하는 구구단을 출력해보자

scanf만 추가하면 된다.

 

scanf("%d",&num); 으로 num의 주소값에 사용자가 입력한 원하는 값을 넣도록 설정한다.

i = 1부터 9가 될때까지 증가하게 되니까

num*1

num*2

num*3

 :

 :

num*9  이런식의 구구단이 완성되는 것이다.

내가 5를 입력하면 i는 그대로 1부터 9까지 곱하게 되고 그 값을 출력하여 5단이 완성된다.

반응형

'C언어' 카테고리의 다른 글

C언어 함수들의 정의  (0) 2018.01.15
C언어 while문(break,continue)  (0) 2018.01.14
C언어 switch문  (0) 2018.01.09
C언어 if 문  (0) 2018.01.08
C언어 입력함수 scanf  (0) 2018.01.05