쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express Slide 1 (of 27)

Slides:



Advertisements
Similar presentations
2014 가을학기 계산 입문 연습 #4 지도교수 : 박성우 조교 : 이다훈. Python 을 설치합시다.
Advertisements

누구나 즐기는 C언어 콘서트 제5장 조건문.
Power C++ 제3장 선택과 반복.
제6장 조건문.
Power Java 제6장 조건과 반복.
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express Slide 1 (of 27)
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 07. 반복실행을 명령하는 반복문.
반복문 컴퓨터시뮬레이션학과 2014년 봄학기 담당교수 : 이형원 E304호,
6장 명령문.
제 4 장 프로그램 제어문 C 프로그래밍.
C 5장. 제어문 #include <stdio.h> int main(void) { int num;
반복문, 함수 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원 E304호,
제7장 반복문 C Express.
Chapter 7. 조건문.
#include <stdio.h> int main(void) { float radius; // 원의 반지름
Chapter 6 Repetition.
Chapter09 JavaScript 구구단표 만들기
제5장 제어명령
Chapter 07. 반복문.
7. while 문의 흐름 제어.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
C언어 콘서트 제6장 반복문.
어서와 Java는 처음이지! 제3장선택과 반복.
6 반복문의 기본 for 문 여러 번 반복하는 작업은 for 문으로!.
7 while 문의 흐름 제어 조건만 만족한다면 무조건 무한 반복!.
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
고급 선택 제어문과 반복문 Chapter 9 C에서의 다중 선택 제어문 선 검사 반복 구조와 for 문
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
C언어 콘서트 제2장 기초 사항.
Part 07 제어 구조 ©우균, 창병모 © 우균, 창병모.
11장. 1차원 배열.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express.
3. while문 반복문의 종류 while 문 while( 조건식 )        문장;.
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express.
Chapter 09 반복문.
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
개정판 누구나 즐기는 C언어 콘서트 제6장 반복문 출처: pixabay.
어서와 C언어는 처음이지 제14장.
어서와 C언어는 처음이지 제15장.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
7장. 다양한 형태의 반복문. 7장. 다양한 형태의 반복문 7-1 반복문이란? 반복문의 기능 세 가지 형태의 반복문 특정 영역을 특정 조건이 만족하는 동안에 반복 실행하기 위한 문장 7-1 반복문이란? 반복문의 기능 특정 영역을 특정 조건이 만족하는 동안에 반복.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
목차. 목차 6.1 반복이란? 6.1 반복이란? 반복문의 종류 6.2 while문.
연산자 (Operator).
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
Choi Seong Yun 컴퓨터 프로그래밍 기초 #06 : 반복문 Choi Seong Yun
제 5장 제어문 Hello!! C 언어 강성호 김학배 최우영.
김선균 컴퓨터 프로그래밍 기초 - 7th : 함수 - 김선균
5장 선택제어문 if 선택문 switch-case 선택문 다양한 프로그램 작성 조건 연산자.
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
2007 1학기 08 반복문.
6장 반복제어문 for 문 while 문 do while 문 기타 제어문.
6장 연습 문제 풀이 학번 : 이름 :조 재한.
-Part1- 제7장 반복문이란 무엇인가.
함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express Slide 1 (of 25)
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express Slide 1 (of 28)
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
C++ 프로그래밍 기초 √ 원리를 알면 IT가 맛있다 3장. 연산자.
7장. 다양한 형태의 반복문. 7장. 다양한 형태의 반복문 7-1 반복문이란? 반복문의 기능 세 가지 형태의 반복문 특정 영역을 특정 조건이 만족하는 동안에 반복 실행하기 위한 문장 7-1 반복문이란? 반복문의 기능 특정 영역을 특정 조건이 만족하는 동안에 반복.
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express.
어서와 C언어는 처음이지 제16장.
제어문Control Statements
어서와 C언어는 처음이지 제21장.
Presentation transcript:

쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express Slide 1 (of 27)

반복문 Q) 반복 구조는 왜 필요한가? A) 같은 처리 과정을 되풀이하는 것이 필요하기 때문이다. 학생 30명의 평균 성적을 구하려면 같은 과정을 30번 반복하여야 한다. Slide 2 (of 27)

while 문 주어진 조건이 만족되는 동안 문장들을 반복 실행한다. while( 조건식 )        문장; Slide 3 (of 27)

반복문의 실행 과정 Slide 4 (of 27)

반복문의 실행 과정 반복횟수 i의 값 i< 3 반복여부 첫번째 반복(시작위치) 참(1) 반복 두번째 반복(시작위치) 1 참(1) 반복 두번째 반복(시작위치) 1 세번째 반복(시작위치) 2 네번째 반복(시작위치) 3 거짓(0) 중지 Slide 5 (of 27)

예제 // while 문을 이용한 구구단 출력 프로그램 #include <stdio.h> int main(void) {         int n;         int i = 1;         printf("구구단 중에서 출력하고 싶은 단을 입력하시오: ");         scanf("%d", &n);         while (i <= 9)         {                 printf("%d*%d = %d \n", n, i, n*i);                 i++;         }                          return 0; } 구구단 중에서 출력하고 싶은 단을 입력하시오: 9 9*1 = 9 9*2 = 18 9*3 = 27 .... 9*9 = 81 Slide 6 (of 27)

예제 #include <stdio.h> int main(void) { int i, n, sum; // 변수 선언                  printf("정수를 입력하시오:");  // 입력 안내 메시지 출력         scanf("%d", &n);             // 정수값 입력         i = 1;                          // 변수 초기화         sum = 0;         while(i <= n)         {                 sum += i;              // sum = sum + i;와 같다.                 i++;                    // i = i + 1과 같다.         }         printf("1부터 %d까지의 합은 %d입니다\n", n, sum);         return 0; } 정수를 입력하시오: 3 1부터 3까지의 합은 6입니다 Slide 7 (of 27)

do...while문 반복 조건을 루프의 끝에서 검사 do 문장 while(조건) ① 문장들이 실행된다.       문장 while(조건) ① 문장들이 실행된다. ② 조건식이 계산된다. ③ 결과가 참이면 ①로 돌아간다. ④ 결과가 거짓이면 종료된다. Slide 8 (of 27)

예제 // do..while 문을 이용한 메뉴 1---새로만들기 #include <stdio.h> 2---파일열기 int main(void) {         int i = 0;         do         {                 printf("1---새로만들기\n");                 printf("2---파일열기\n");                 printf("3---파일닫기\n");                 printf("하나를 선택하시요.\n");                 scanf("%d", &i);         } while(i < 1 || i > 3);                  printf("선택된 메뉴=%d\n",i);         return 0; } 1---새로만들기 2---파일열기 3---파일닫기 하나를 선택하시요. 1 선택된 메뉴=1 Slide 9 (of 27)

글자 게임 예제 // 반복을 이용한 글자 게임 프로그램 #include <stdio.h> //  반복을 이용한 글자 게임 프로그램 #include <stdio.h> int main(void) {         char answer = 'm'         char guess;         int tries = 0;                  do         {                 printf("정답을 추측하여 보시오: ");                 scanf(" %c", &guess);                 tries++;          if( guess > answer )                         printf("제시한 문자의 아스키 코드 값이 높습니다.\n");                 if( guess < answer )                         printf("제시한 문자의 아스키 코드값이 낮습니다.\n");         }         while(guess != answer);         printf("축하합니다. 시도횟수=%d \n", tries);         return 0; } 정답을 추측하여 보시오: a 제시한 문자의 아스키 코드값이 낮습니다. 정답을 추측하여 보시오: s 제시한 문자의 아스키 코드값이 높습니다. 정답을 추측하여 보시오: b 정답을 추측하여 보시오: z 정답을 추측하여 보시오: m 축하합니다. 시도횟수=5 Slide 10 (of 27)

for 루프 정해진 횟수만큼 반복하는 구조 Slide 11 (of 27)

for 문의 구조 for ( 초기화; 조건식; 증감식) 문장; ① 초기화를 실행한다.       문장; ① 초기화를 실행한다. ② 반복 조건을 나타내는 조건식을 계산한다. ③ 수식의 값이 거짓이면 for 문의 실행이 종료된다. ④ 수식의 값이 참이면 문장이 실행된다. ⑤ 증감을 실행하고 ②로 돌아간다. Slide 12 (of 27)

for 문의 구조 int i; for(i = 0; i < 10; i++) printf("Hello World!\n"); Slide 13 (of 27)

예제 // 반복을 이용한 정수합 프로그램 #include <stdio.h> int main(void) { //  반복을 이용한 정수합 프로그램 #include <stdio.h> int main(void) {         int i, sum;         sum = 0;               for(i = 1;i <= 10; i++)                 sum += i;                     // sum = sum + i;와 같음         printf("1부터 10까지의 정수의 합= %d\n",sum);         return 0; } 1부터 10까지의 정수의 합 = 55 Slide 14 (of 27)

예제 // 반복을 이용한 세제곱값구하기 정수를 입력하시요:5 #include <stdio.h> int main(void) {         int i, n;         printf("정수를 입력하시요:");         scanf("%d", &n);         printf("====================\n");         printf("   i       i의 세제곱\n");         for(i = 1;i <= n; i++)                 printf("%5d     %5d\n", i, i*i*i);          return 0; } 정수를 입력하시요:5 ====================    i       i의 세제곱     1         1     2         8     3        27     4        64     5       125 Slide 15 (of 27)

예제 // 반복을 이용한 팩토리얼 구하기 #include <stdio.h> int main(void) {         long fact=1;         int i, n;         printf("정수를 입력하시요:");         scanf("%d", &n);         for(i = 1;i <= n; i++)                 fact = fact * i;         printf("%d!은 %d입니다.\n",n,fact);                return 0; } 정수를 입력하시요: 10 10!은 3628800입니다. Slide 16 (of 27)

while 루프와 for 루프와의 관계 Slide 17 (of 27)

중첩 반복문 중첩 반복문(nested loop): 반복문 안에 다른 반복문이 위치 Slide 18 (of 27)

예제 // 중첩 for 문을 이용하여 *기호를 사각형 모양으로 출력하는 프로그램 #include <stdio.h> int main(void) {         int x, y;         for(y = 0;y < 5; y++)         {                 for(x = 0;x < 10; x++)                         printf("*");                 printf("\n");         }         return 0; } ********** Slide 19 (of 27)

break 문 break 문은 반복 루프를 빠져 나오는데 사용된다. Slide 20 (of 27)

예제 // break를 이용하여 무한루프를 탈출한다. #include <stdio.h> #include <math.h> int main(void) {         double v;         while(1)         {                 printf("실수값을 입력하시오: ");                 scanf("%lf", &v);                 if( v < 0.0 )                         break;                 printf("%f의 제곱근은 %f입니다.\n", v, sqrt(v));         }   return 0; } 실수값을 입력하시오: 9.0 9.000000의 제곱근은 3.000000입니다. 실수값을 입력하시오: 12.0 12.000000의 제곱근은 3.464102입니다. 실수값을 입력하시오: 25.0 25.000000의 제곱근은 5.000000입니다. 실수값을 입력하시오: -1 Slide 21 (of 27)

goto문의 사용 #include <stdio.h> int main(void) { int x, y;         for(y = 1; y < 10000; y++)         {                 for(x = 1; x < 50; x++)                 {                         if( _kbhit() ) goto OUT;                         printf("*");                 }                 printf("\n");         } OUT:         return 0; } Slide 22 (of 27)

continue 문 현재의 반복을 중단하고 다음 반복을 시작하게 한다. Slide 23 (of 27)

예제 sum = 245 Slide 24 (of 27)

예제 // 소문자를 대문자로 변경한다. #include <stdio.h> 소문자를 입력하시오: a int main(void) {         char letter;         while(1)         {                 printf("소문자를 입력하시오: ");                 scanf(" %c", &letter);                 if( letter == 'Q' )                         break ;                 if( letter < 'a' || letter > 'z' )                         continue ;                 letter -= 32;                 printf("변환된 대문자는 %c입니다.\n", letter);         }         return 0; } 소문자를 입력하시오: a 변환된 대문자는 A입니다. 소문자를 입력하시오: b 변환된 대문자는 B입니다. 소문자를 입력하시오: c 변환된 대문자는 C입니다. 소문자를 입력하시오: Q Slide 25 (of 27)

예제 #include <stdio.h> #define START_DAY 3 // 첫번째 날이 수요일 #define DAYS_OF_MONTH      31     // 달의 일수 int main(void) {         int day, date;        printf("=====================\n");         printf("일 월 화 수 목 금 토\n");         printf("=====================\n");         for(day = 0; day < START_DAY ; day++)    // 월요일부터 수요일까지                 printf("   ");                       // 공백 출력         for(date = 1; date <= DAYS_OF_MONTH ; date++)         {                 if( day == 7 )                 {                         day = 0;      // 일요일이면 줄바꿈을 출력                         printf("\n");                 }                 day++;                 printf("%2d ", date);               // 날을 출력한다.         }         printf("\n=====================\n");         return 0; } Slide 26 (of 27)

Q & A Slide 27 (of 27)