* For๋ฌธ
์กฐ๊ฑด๋ฌธ์ ๋ถํฉํ๋ฉด ๊ณ์ํ์ฌ ์กฐ๊ฑด๋ฌธ ์ดํ์ ๋ด์ฉ์ ์คํํฉ๋๋ค. ๋ฐ๋ณต๋ฌธ์ ํ์ถํ ๋๋ break;๋ก ํ์ถํ๋ค.
for (์ด๊ธฐํ์ ; ์กฐ๊ฑด์ ; ์ฆ๊ฐ์) {
๋ฐ๋ณตํ ๋ด์ฉ
}
|
*์์ 1 : (0๋ถํฐ 100๊น์ง์ ์์ฐ์ ์ถ๋ ฅํ๊ธฐ)
#include <stdio.h>
int main(void){
for(int num=0; num<100; num++){
printf("%d ",num);
}
}
*์์ 2: (1๋ถํฐ N๊น์ง์ ํฉ ์ถ๋ ฅํ๊ธฐ)
#include <stdio.h>
int main(void){
int N; int sum=0;
printf("N์ ์
๋ ฅํ์ธ์.");
scanf("%d",&N);
for(int a=1; a<=N; a++){
sum = a + sum;
}
printf("1๋ถํฐ N๊น์ง์ ํฉ์ %d์
๋๋ค.",sum);
}
*๋ฌดํ๋ฃจํ
1. ๋ฌดํ๋ฃจํ๋ ์ข
๋ฃ ์กฐ๊ฑด ์์ด ํ์์ด ๋ฐ๋ณต๋๋ ๋ฐ๋ณต๋ฌธ์ ์๋ฏธ. (์กฐ๊ฑด์ด ํญ์ True์ธ ๊ฒฝ์ฐ)
2. ์๋์ ์ผ๋ก ๋ง๋ ๋ฌดํ๋ฃจํ๋ ์์ง๋ง, ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ฌ์ฉ์์ ์ค์๋ก์ธํด ๋ฐ์ํ์ฌ ์กฐ๊ฑด์์ ์ธ์ธ๋ ์ฃผ์ํด์ผํ๋ค.
#include <stdio.h>
int main(void){
for (;;){ //์กฐ๊ฑด๋ฌธ์ ๋ด์ฉ์ด ์์ผ๋ฉด ํญ์ ์ฐธ(True)
printf("Hello world");
}
}
์ ์ฝ๋์ฒ๋ผ ์กฐ๊ฑด๋ฌธ์ ๋ด์ฉ์ ๋ฃ์ง ์์ for๋ฌธ, ํน์ while์ ์กฐ๊ฑด์ 1(True)๋ก ํ ๊ฒฝ์ฐ์ ๋ฌดํ๋ฃจํ๊ฐ ๋๋ค.
*While๋ฌธ
while๋ ๋ง์ฐฌ๊ฐ์ง๋ก, ์กฐ๊ฑด์ด True์ผ๋ while๋ฌธ ๋ด๋ถ์ ๊ตฌ๋ฌธ์ ๋ฐ๋ณต์ ์ผ๋ก ์คํํ๋ค.
while(์กฐ๊ฑด) {
//๋ฐ๋ณต์ ์ผ๋ก ์คํํ ๋ถ๋ถ
}
|
*์์ 1 : (๋ฌธ์ N๋ฒ ์ถ๋ ฅํ๊ธฐ)
#include <stdio.h>
int main(void){
int N;
printf("์ถ๋ ฅํ ํ์๋ฅผ ์
๋ ฅํ์์ค.");
scanf("%d",&N);
while( N--) { // n์ด 0์ด๋ผ๋ฉด ๊ฑฐ์ง์ด ๋๋ฏ๋ก stop
printf("Hello world (%dํ ๋จ์์ต๋๋ค.)\n",N);
}
}
*์์ 2 : (๊ตฌ๊ตฌ๋จ ์ถ๋ ฅํ๊ธฐ)
#include <stdio.h>
int main(void){
int k;
int i = 1;
printf("๊ตฌ๊ตฌ๋จ ๋ช๋จ ๋ณด์ฌ์ค๊น ?");
scanf("%d",&k);
while(i<=9){
printf("%d * %d = %d\n",k,i,k*i);
i++;
}
}
๊ตฌ๊ตฌ๋จ์ ํน์ ๋จ์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด์๋ while๋ฌธ์ด ํ๋ ํ์ํ์ง๋ง, ์ ์ฒด ๊ตฌ๊ตฌ๋จ์ ๋ณด์ฌ์ฃผ๋ ค๋ฉด 2์คํด์ while๋ฌธ์ ์ค์ฒฉ์์ผ ์คํํด์ผ ํ๋ค. ๊ทธ๋ฌํ ํํ๋ฅผ ์ค์ฒฉ ๋ฐ๋ณต๋ฌธ์ด๋ผ๊ณ ํ๋ค.
*์ค์ฒฉ ๋ฐ๋ณต๋ฌธ
1. ๋ฐ๋ณต๋ฌธ์ด ์ฌ๋ฌ๊ฐ ์กด์ฌ. ๋ฐ๋ณต๋ฌธ ๋ด๋ถ์ ๋ฐ๋ณต๋ฌธ์ด ์ค์ฒฉ๋์ด ์กด์ฌํ๋ ํํ๋ฅผ ๋งํ๋ค.
(๋ด๋ถ์ ์ค์ฒฉ๋ฌธ์ด ์ ๋ถ ์คํ๋๊ณ , ๋ค์ ์ธ๋ถ์ ์ค์ฒฉ๋ฌธ์ด ์คํ๋๋๊ฒ์ ๋ฐ๋ณต... )
2. ๋ฐ๋ณต๋ฌธ์ด ์ค์ฒฉ๋๋ฉด ์ฐ์ฐ ํ์๋ ์ ๊ณฑ ํํ๋ก ์ฆ๊ฐํ๋ค.
*while๋ฌธ์ผ๋ก ๊ตฌ๊ตฌ๋จ ์ ์ฒด ์ถ๋ ฅํ๊ธฐ
#include <stdio.h>
int main(){
int i=2;
while(i<=9){
int k = 1;
while(k<=9){
printf("%d * %d = %d\n",i,k,i*k);
k++;
}
i++;
}
}
*for๋ฌธ์ผ๋ก ๊ตฌ๊ตฌ๋จ ์ ์ฒด ์ถ๋ ฅํ๊ธฐ
#include <stdio.h>
int main(void){
for(int i=1;i<=9;i++){
for(int k=1;k<=9;k++){
printf("%d * %d = %d\n",i,k,i*k);
}
}
}
* do while ๋ฌธ
while ๋ฐ๋ณต๋ฌธ์ ์กฐ๊ฑด์์ ๋ง์กฑ๋์ง ์์ผ๋ฉด, 1ํ๋ ์คํ๋์ง ์๊ณ ๋ค์ ์ฝ๋๋ก ๋์ด๊ฐ๋ค. ๊ทธ๋ฌ๋ do while๋ฌธ์ ์ต์ด์ 1ํ๋ ๋ฐ๋์ ์คํ๋๋ค.
์ด๊ธฐ์
do
{
๋ฐ๋ณตํ ์ฝ๋
์ฆ๊ฐ์(๋ณํ์)
} while (์กฐ๊ฑด์);
While๋ค์ ์ธ๋ฏธ์ฝ๋ก ์ฃผ์!
์์ 0๋ถํฐ 100๊น์ง ์ถ๋ ฅํ๊ธฐ
#include <stdio.h>
int main(){
int i = 0;
do
{
printf("%d\n", i);
i++;
} while (i <= 100);
}
* break ์ continue
break ๋ ๋ฃจํ๋ฅผ ์์ ํ์ถ์ํค์ง๋ง, continue๋ ๋ฃจํ๋ฅผ ์ค๋จ์ํค์ง ์์ผ๋ฉด์, ํํด๋ง ๊ฑด๋๋ฐ๋๋ก ํ๋ ์ญํ ์ ํ๋ค.
(์ ํํ ๋งํ๋ฉด ํํด ์ค์์๋, continue์ดํ ๊ตฌ๋ฌธ๋ค๋ง ๊ฑด๋๋ด๋ค.)
* continue๋ฅผ ์ด์ฉํ์ฌ ์ง์๋ง ์ถ๋ ฅํ๊ธฐ
#include <stdio.h>
int main(){
for (int i =1; i<= 100; i++){
if (i%2==1)
continue;
printf("%d\n",i);
}
return 0;
}
i % 2 = 0์ผ๋๊ฐ ์ง์์ด๋ค. ๊ทธ๋ ๋ค๋ฉด i % 2 = 1์ผ๋ (ํ์์ผ๋) continue๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฒ ์ฐจ๋ก๋ฅผ ๊ฑด๋๋ฐ๋ฉด,
ํ์์ฐจ๋ก๋๋ ํญ์ printf๋ฌธ์ด ์คํ๋์ง ์๊ณ ๊ฑด๋๋ฐ์ด์ง๊ธฐ ๋๋ฌธ์ ์ง์๋ง ์ถ๋ ฅ ๋ ์ ์๋ค.