본문 바로가기

전체 글

(1837)
1077 : [기초-반복실행구조] 정수 1개 입력받아 그 수까지 출력하기 Q> 정수(0 ~ 100) 1개를 입력받아 0부터 그 수까지 순서대로 출력해보자. for((반복전 실행/준비 내용); (조건 검사 내용); (한번 실행한 후 처리할 작업)) { //코드블록 ... } 반복 구조를 사용하자. 참고 for((반복전 실행/준비내용); (조건 검사 내용); (한번 실행한 후 처리할 작업)) { //코드블록 ... } 구조는 while( ) {...}, do {...} while( ); 구조와 같이 어떤 작업을 반복적으로 수행할 때 가장 일반적으로 많이 사용하는 구조이다. while( ) {...}, do {...} while( ); 과 다르게 반복을 위한 초기화/준비, 조건검사, 반복 후 증감 등을 한 번에 작성할 수 있다. for( ... ) 를 사용할 때에는 반복 실행되는 ..
1076 : [기초-반복실행구조] 문자 1개 입력받아 알파벳 출력하기 Q> 영문자(a ~ z) 1개가 입력되었을 때 그 문자까지의 알파벳을 순서대로 출력해보자. 참고 do { //코드블록 ... }while(조건); //do~while( ) ; 구조는 반드시 마지막에 세미콜론(;)을 붙여야 한다. 구조를 사용하자. do { //코드블록 ... }while(조건); 구조는 while( ) { ... } 과 유사한 반복 실행 구조를 만들 수 있는데 다른 점은 무조건 한 번은 실행된다는 것이다. 마지막에 세미콜론을 반드시 붙여야 한다. 예시 char x, t='a'; scanf("%c", &x); do { printf("%c ", t); t+=1; //t+=1; 는 t=t+1과 같은 의미이다. }while(t
1075 : [기초-반복실행구조] 정수 1개 입력받아 카운트다운 출력하기2 Q> 정수(1 ~ 100) 1개가 입력되었을 때 카운트다운을 출력해보자. 예시 int n; scanf("%d", &n); while(n!=0) { n=n-1; //n--; 와 같다. printf("%d", n); } 입력 정수 1개가 입력된다. (1 ~ 100) 출력 1씩 줄이면서 한 줄에 하나씩 0이 될 때까지 출력한다. A> n1 = int(input()) while n1 >= 1: n1 = n1 - 1 print(n1) A1> a=input() n=int(a) while n>0 : n-=1 print(n) W> while 문 #> admin, 2019년 10월 04일, http://codeup.kr
1074 : [기초-반복실행구조] 정수 1개 입력받아 카운트다운 출력하기1 Q> 정수(1 ~ 100) 1개가 입력되었을 때 카운트다운을 출력해보자. while(조건) { ... } 구조를 사용하자. 예시 int n; scanf("%d", &n); while(n!=0) { printf("%d", n); n=n-1; //n--;와 같다. } 입력 정수 1개가 입력된다. (1 ~ 100) 출력 1씩 줄이면서 한 줄에 하나씩 1이 될 때까지 출력한다. A> n1 = int(input()) while n1 >= 1: print(n1) n1 = n1 - 1 A1> a=input() n=int(a) while n>=1 : print(n) n=n-1 W> while 반복문 #> admin, 2019년 10월 04일, http://codeup.kr
1073 : [기초-반복실행구조] 0 입력될 때까지 무한 출력하기2 Q> 정수가 순서대로 입력된다. -2147483648 ~ +2147483647, 단 개수는 알 수 없다. 0이 아니면 입력된 정수를 출력하고, 0이 입력되면 출력을 중단해보자. if(조건) { //코드블록 ...; } 구조를 사용하면 주어진 조건이 참인 경우만 코드블록 부분이 실행된다. 비슷하게 어떤 조건에 따라 반복적으로 실행시킬 때에는 if를 while로 바꾸기만 하면 while(조건) { //코드블록 ...; } 와 같은 방법으로 코드블록의 내용을 반복적으로 수행시킬 수 있다. 수행되는 과정은 1. 먼저 조건을 검사한다. 2. 코드블록을 실행한다. 3. 다시 조건을 검사한다. 4. 코드블록을 실행한다. ... 와 같이 주어진 조건이 참인 동안 계속적으로 반복 실행한다. 이렇게 while(조건){....
1072 : [기초-반복실행구조] 정수 입력받아 계속 출력하기 Q> n개의 정수가 순서대로 입력된다. -2147483648 ~ +2147483647, 단 n의 최대 개수는 알 수 없다. n개의 입력된 정수를 순서대로 출력해보자. while( ), for( ), do~while( ) 등의 반복문을 사용할 수 없다. 예시 int n, m; scanf("%d", &n); reget: //레이블은 콜론( : ) 으로 끝난다. scanf("%d", &m); printf("%d\n", m); if(n-- != 0) goto reget; //reget:으로 이동, n의 값 1만큼 감소 입력 첫 줄에 정수의 개수 n이 입력되고, 두 번째 줄에 n개의 정수가 공백을 두고 입력된다. -2147483648 ~ +2147483647, 단 n의 최대 개수는 알 수 없다. 출력 n개의 정수..
1071 : [기초-반복실행구조] 0 입력될 때까지 무한 출력하기1 Q> 정수가 순서대로 입력된다. -2147483648 ~ +2147483647, 단 개수는 알 수 없다. 0이 아니면 입력된 정수를 출력하고, 0이 입력되면 출력을 중단해보자. while( ), for( ), do~while( ) 등의 반복문을 사용할 수 없다. 참고 goto 명령문을 사용하면 간단한 반복 실행을 만들 수 있다. 반복 실행 부분을 빠져나오기 위해(즉 무한 반복을 방지하기 위해) 반복 실행 되는 도중에 조건을 검사해야 한다. goto 이름: 이 명령은 이름: 이 작성된 곳으로 프로그램의 실행 흐름을 바꾸어 준다. "이름:" 과 같이 콜론(:)이 붙어있는 부분을 이름표(label, 레이블)라고 한다. 레이블은 특별한 선언 없이 사용할 수 있으며 언더바(_)나 영문자로 시작하면 된다. 레이블은..
1070 : [기초-조건/선택실행구조] 월 입력받아 계절 출력하기 Q> 월이 입력될 때 계절 이름이 출력되도록 해보자. 예 월 : 계절 이름 12, 1, 2 : winter 3, 4, 5 : spring 6, 7, 8 : summer 9, 10, 11 : fall 참고 swtich( ).. case ... break; 제어문에서 break;를 제거하면 멈추지 않고 다음 명령이 실행되는 특성을 이용할 수 있다. switch(a) { ... case 3: case 4: case 5: printf("spring"); break; ... } 로 작성하면, 3, 4, 5가 입력되었을 때 모두 "spring"이 출력된다. ** 12, 1, 2 는 어떻게 처리해야 할지 여러 가지로 생각해 보아야 한다. 입력 월을 의미하는 1개의 정수가 입력된다.(1 ~ 12) 출력 계절 이름을 출..