Presentation is loading. Please wait.

Presentation is loading. Please wait.

3주차: Control Flow and Others

Similar presentations


Presentation on theme: "3주차: Control Flow and Others"— Presentation transcript:

1 3주차: Control Flow and Others

2 반복 어떤 작업을 반복적으로 해야 하는 경우 while 문 for 문 do-while 문
1에서 100까지 정수의 합을 구하는 경우 이 강의를 듣는 학생 전부의 기말고사 점수의 평균을 구할 때 while 문 for 문 do-while 문

3 while 문이 사용된 프로그램의 예 이 프로그램은 1에서 100까지 정수의 합을 구하고 출력하는 프로그램이다.
#include<stdio.h> int main(void) { int i, sum; i = 100; sum = 0; while(i >= 0){ sum += i; i = i – 1; } printf(“Sum of 1 – 100 = %d\n”, sum); return 0; 이 프로그램은 1에서 100까지 정수의 합을 구하고 출력하는 프로그램이다. sum += i는 sum = sum + i와 같다.

4 while 문 형식 expression의 값이 참인 동안 statement를 수행한다.

5 next part of the program
while 문의 수행순서 expression is TRUE? statement next part of the program yes no

6 for 문이 사용된 프로그램의 예 이 프로그램은 1에서 100까지 정수의 합을 구하고 출력하는 프로그램이다.
#include<stdio.h> int main(void) { int i, sum; sum = 0; for(i = 0; i <= 100; i++) sum += i; printf(“Sum of 1 – 100 = %d\n”, sum); return 0; } 이 프로그램은 1에서 100까지 정수의 합을 구하고 출력하는 프로그램이다. i++는 i = i + 1과 같다.

7 for 문 형식 for(expr1; expr2; expr3) statement 수행과정 1. expr1을 계산한다. Initializing 2. expr2의 값이 참이면 statement를 수행하고, 거짓이면 for 문의 수행을 끝낸다. 3. expr3를 계산한다. 4. 다시 1로 돌아간다.

8 printf() 함수 stdout으로 무엇인가를 출력하는 함수 printf 함수의 인자(parameter) 함수 이름
control_string, other_arguments

9 간단한 printf()의 예 #include <stdio.h> int main(void) {
printf(“Hello world!\n”); return 0; } control_string: “Hello world!\n”); control_string의 내용을 stdout으로 출력한다.

10 수식의 값을 출력하는 printf()의 예 avg_score의 정수값을 출력하는 경우
#include<stdio.h> int main(void) { int score1, score2, score3, avg_score; int num_score; score1 = 87; score2 = 93; score3 = 100; num_score = 3; avg_score = (score1 + score2 + score3) / num_score; printf(“Average score: %d\n”, avg_score); return 0; } avg_score의 정수값을 출력하는 경우 %d: conversion specification avg_score: other_arguments

11 Conversion Specifications and other_arguments
%로 시작한다. control_string에 나타난 conversion_specification은 other_arguments의 수식들에 차례로 대응된다. conversion_specification은 해당 수식을 어떻게 출력할 것인가를 정하는 역할을 한다.

12 수식(Expressions) C에서 수식은 상수(constant), 변수(variable), 연산자(operator)들로 구성된다. 3 정수 상수 수식 3 + sum 3: 정수상수, +: 연산자, sum: 변수 ‘A’ 문자(character) 상수 수식 “This is a string!” 문자열(string) 상수 수식

13 Conversion Specification의 예
printf(“%d”, 3); printf(“Adding 3 to sum = %d”, sum + 3); printf(“%c%4c%5c”, ‘A’, ‘B’, ‘C’); printf(“%s”, “This is a string”); printf(“%f”, 3.7); printf(“%e”, 3.7); %d: 정수 %c: 문자 %s: 문자열 %f: 실수 %e: 실수(지수형태로 출력) %4c: 4는 출력시의 여백을 나타낸다.

14 출력시의 여백 조정 printf(“%c%4c%5c”, ‘A’, ‘B’, ‘C’);
출력결과 printf(“%.3f”, avg_fscore); avg_score에 이 들어 있는 경우 A C B 9 3 .

15 scanf() 함수 Conversion specifications %d: 정수 %c: 문자 %s: 문자열 %f: 실수

16 간단한 성적 처리 프로그램(1/2) #include<stdio.h> int main(void) {
float prog_score, eng_score, math_score, avg_score; int i; printf(“\nInput score of the programming:”); scanf(“%f”, &prog_score); printf(“\nInput score of the english:”); scanf(“%f”, &eng_score); printf(“\nInput score of the mathematics:”); scanf(“%f”, &math_score); avg_score = (prog_score + eng_score + math_score) / 3; printf(“\n\n%15s%15s%15s%15s\n”, “Programming”, “English”, “Mathematics”, “Average”);

17 간단한 성적 처리 프로그램(2/2) for(i = 0; i < 60; i++) printf(“=“);
printf(“\n%15.1f%15.1f%15.1f%15.1f\n”, prog_score, eng_score, math_score, avg_score); return 0; } Input score of the programming: 76.0 ... Programming English Mathematics Average ===========================================

18 Fundamental Data Types
char, signed char, unsigned char 문자(character)를 저장 (signed) short (int), (signed) int, (signed) long (int) 부호있는 정수 unsigned short (int), unsigned (int), unsigned long (int) 부호없는 정수 float, double, long double 실수(부동(浮動)소수)

19 Bit and Byte in Computers
컴퓨터메모리의 최소기억단위 0 또는 1을 기억 Byte 컴퓨터메모리에서 주소지정의 최소단위 8비트

20 Characters in C ‘A’가 변수 tmpchr에 들어가는 과정은 다음과 같다.
char tmpchr; tmpchr = ‘A’; printf(“%c”, ‘A’); ‘A’가 변수 tmpchr에 들어가는 과정은 다음과 같다. 메모리의 어딘가에 ‘A’가 저장되어 있다. tmpchr도 메모리의 어떤 장소이다. ‘A’라는 값이 tmpchr에 들어간다. memory memory A tmpchr

21 Representations for Characters
65가 이진수로 메모리에 들어 있다. ASCII 코드 ‘B’ = 66, ‘C’ = 67,... ‘+’, ‘0’, ... 7비트 = 128개의 문자 표현가능

22 Type char in C char 1바이트 = 8비트 ‘A’ = 65 = 10000012 char tmpchr = ‘A’;
tmpchr in memory 1

23 교재에서 강의와 연관된 부분 1장 1.5 3장 3.1, 3.2, 3.3 4장 4.8, 4.9, 4.10, 4.11, 4.12, 4.13


Download ppt "3주차: Control Flow and Others"

Similar presentations


Ads by Google