프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

Similar documents
쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - chap-06.pptx

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍

untitled

C 언어 프로그래밊 과제 풀이

중간고사

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

OCW_C언어 기초

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - chap-05.pptx

untitled

Microsoft PowerPoint - gnu-w10-c-chap11

<4D F736F F F696E74202D20C1A635C0E520BCF6BDC4B0FABFACBBEAC0DA>

Microsoft PowerPoint - chap05-제어문.pptx

Microsoft PowerPoint - chap04-연산자.pptx

PowerPoint 프레젠테이션

untitled

Microsoft PowerPoint - 5장 조건문 pptx

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

Chapter_06

Microsoft PowerPoint - gnu-w10-c-chap12

Microsoft PowerPoint - ch03 - 조건문과 반복문 pm0215

PowerPoint 프레젠테이션

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

1.1.1 컴퓨터의 구성 p.19

Microsoft PowerPoint - Lesson6.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap-07.pptx

int main(void) int a; int b; a=3; b=a+5; printf("a : %d \n", a); printf("b : %d \n", b); a b 3 a a+5 b &a(12ff60) &b(12ff54) 3 a 8 b printf(" a : %x \

Microsoft PowerPoint - chap03-변수와데이터형.pptx


Microsoft PowerPoint - [2009] 02.pptx

Microsoft PowerPoint - chap06-1Array.ppt

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20C1A633C0E52043C7C1B7CEB1D7B7A5B1B8BCBABFE4BCD2>

Infinity(∞) Strategy

2016 년도 q 일학습병행제내부평가예시문제

윈도우즈프로그래밍(1)

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

Microsoft PowerPoint - chap12-고급기능.pptx

Microsoft PowerPoint - 2주차-1차시 (강의자료) ch01 - C Programming 기초 (part 2)

4.0 개요 p.116 수식 (expression) 연산자 (operator) 와피연산자 (operand) 로구성 수식은평가 (evaluate) 되어최종적으로 1 개의결과값이됨 피연산자 : 상수, 변수, 또다른수식 sum - 10 (a+b) / 2 연산자 2

Microsoft PowerPoint - Java7.pptx

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

쉽게 풀어쓴 C 프로그래밍

Microsoft PowerPoint - Lesson2.pptx

Microsoft PowerPoint - 7장 배열 pptx

C 프로그래밊 개요

컴파일러

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

Microsoft PowerPoint - chap-03.pptx

Microsoft PowerPoint - ch07 - 포인터 pm0415

C 언어의구성요소인상수, 변수, 입 출력함수에 대하여학습

11장 포인터

본 강의에 들어가기 전

untitled

금오공대 컴퓨터공학전공 강의자료

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

1.1.1 컴퓨터의 구성 p.19

: 1 int arr[9]; int n, i; printf(" : "); scanf("%d", &n); : : for(i=1; i<10; i++) arr[i-1] = n * i; for(i=0; i<9; i++) if(i%2 == 1) print

제 11 장포인터 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

프로그램의실행화면 주석 (comment) 두수의합 : 300 /* 두개의숫자의합을계산하는프로그램 */ 주석은코드를설명하는글입니다. 주석 3 가지방법의주석 주석의예 /* 한줄로된주석 */ /* 저자 : 홍길동날짜 : 2013.

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - Chapter8.pptx

Java ...

C 언어와 프로그래밍 개요

Microsoft PowerPoint - chap-11.pptx

Microsoft PowerPoint - Chapter_05.pptx

슬라이드 1

03장.스택.key

ch15

금오공대 컴퓨터공학전공 강의자료

슬라이드 1

슬라이드 1

슬라이드 1

Microsoft PowerPoint - 제11장 포인터

06 세상을 변화시키는 연산자

Microsoft PowerPoint - Chapter_08.pptx

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

ABC 3장

슬라이드 1

; struct point p[10] = {{1, 2, {5, -3, {-3, 5, {-6, -2, {2, 2, {-3, -3, {-9, 2, {7, 8, {-6, 4, {8, -5; for (i = 0; i < 10; i++){ if (p[i].x > 0 && p[i

Microsoft PowerPoint - 2장 변수와 자료형 pptx

프로그래밍 및 연습 1

Microsoft PowerPoint - C프로그래밍-chap03.ppt [호환 모드]

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

PowerPoint 프레젠테이션

, ( ),, ( ), 3, int kor[5]; int eng[5]; int Microsoft Windows 4 (ANSI C2 ) int kor[5] 20 # define #define SIZE 20 int a[10]; char c[10]; float

PowerPoint 프레젠테이션

슬라이드 1

Microsoft PowerPoint - ch08 - 구조체 (structure) am0845

JAVA PROGRAMMING 실습 02. 표준 입출력

C++-¿Ïº®Çؼ³10Àå

기초컴퓨터프로그래밍

Transcription:

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

CHAPTER 9 둘중하나선택하기

관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다.

관계연산자 연산자 의미 x == y x와 y가같은가? x!= y x와 y가다른가? x > y x가 y보다큰가? x < y x가 y보다작은가? x >= y x가 y보다크거나같은가? x <= y x가 y보다작거나같은가?

예제 #include <stdio.h> int main(void) { int x, y; printf(" 두개의정수를입력하시오 : "); scanf("%d%d", &x, &y); } printf("x == y 의결과값 : %d", x == y); printf("x!= y 의결과값 : %d", x!= y); printf("x > y 의결과값 : %d", x > y); printf("x < y 의결과값 : %d", x < y); printf("x >= y 의결과값 : %d", x >= y); printf("x <= y 의결과값 : %d", x <= y); return 0; 두개의정수를입력하시오 : 3 4 x == y 의결과값 : 0 x!= y 의결과값 : 1 x > y 의결과값 : 0 x < y 의결과값 : 1 x >= y 의결과값 : 0 x <= y 의결과값 : 1

주의할점! (x = y) y의값을x에대입한다. 이수식의값은 x의값이다. (x == y) x와 y가같으면 1, 다르면 0이수식의값이된다. (x == y) 를 (x = y) 로잘못쓰지않도록주의!

논리연산자 여러개의조건을조합하여참과거짓을따지는연산자 결과값은참 (1) 아니면거짓 (0) x&&y x 와 y 가모두참인경우에만참이된다.

논리연산자 연산자 x&&y x y 의미 AND 연산,x 와 y 가모두참이면참, 그렇지않으면거짓 OR 연산,x 나 y 중에서하나만참이면참, 모두거짓이면거짓!x NOT 연산,x 가참이면거짓,x 가거짓이면참

AND 연산자 27 800 (age <= 30) && (toeic >= 700) 참 (1) 참 (1) 참 (1)

OR 연산자 27 699 (age <= 30) (toeic >= 700) 참 (1) 거짓 (0) 참 (1)

NOT 연산자 피연산자의값이참이면연산의결과값을거짓으로만들고, 피연산자의값이거짓이면연산의결과값을참으로만든다. result =!1; // result에는 0가대입된다. result =!(2==3); // result에는 1이대입된다.

예제 #include <stdio.h> int main(void) { int x, y; printf(" 두개의정수를입력하시오 : "); scanf("%d%d", &x, &y); printf("%d && %d 의결과값 : %d", x, y, x && y); printf("%d %d 의결과값 : %d", x, y, x y); printf("!%d 의결과값 : %d", x,!x); } return 0; 두개의정수를입력하시오 : 1 0 1 && 0 의결과값 : 0 1 0 의결과값 : 1!1 의결과값 : 0

if-else 문 if( 조건식 ) 문장1; // 조건식이참 else 문장2; // 조건식이거짓

if-else 문 if ( number > 0 ) { printf( 양수입니다. \n"); } else { printf(" 양수가아닙니다.\n"); }

if 문 if( 조건식 ) 문장1; 문장2;

핵심예제 : 홀수, 짝수구별하기 키보드에서입력받은정수가홀수인지짝수인지를말해주는프로그램을작성하여보자.

// if-else 문을이용하여홀수와짝수를구분한다. #include <stdio.h> int main(void) { int number; printf(" 정수를입력하시오 :"); scanf("%d", &number); 예제 #1 if( number % 2 == 0 ) printf(" 입력된정수는짝수입니다.\n"); else printf(" 입력된정수는홀수입니다.\n"); } return 0; 정수를입력하시오 : 23 입력된정수는홀수입니다.

핵심예제 : 큰수출력하기 사용자로부터두개의정수를입력받아서둘중에서큰수를출력한다.

예제 #1 #include <stdio.h> int main(void) { int x, y ; int max ; start x, y printf(" 첫번째정수 : "); scanf("%d", &x); Yes x>y No printf(" 두번째정수 : "); scanf("%d", &y); max x max y if (x > y) else max = x; max = y; max } printf(" 큰수는 %d ", max); return 0; 정수를입력하시오 end : 23 입력된정수는홀수입니다.

Lab: 윤년판단 입력된연도가윤년인지아닌지를판단하는프로그램을만들어보자.

예제 #3 // 윤년판단프로그램 #include <stdio.h> int main(void) { int year; printf(" 연도를입력하시오 : "); scanf("%d", &year); if((year % 4 == 0 && year % 100!= 0) year % 400 == 0) printf("%d 년은윤년입니다.\n", year); else printf("%d 년은윤년이아닙니다.\n", year); } return 0; 연도를입력하시오 : 2012 2012 년은윤년입니다.

복합문 복합문 (compound statement) 중괄호를사용하여문장들을그룹핑하는것, 블록 (block) 이라고도한다. 단일문대신들어갈수있다. if( score >= 60 ) { printf(" 합격입니다.\n"); printf(" 장학금도받을수있습니다.\n"); } 조건식이참이면 2 개의문장이묶여서실행된다.

중첩 if if 문에다시 if 문이포함 if( 조건식1 ) if( 조건식2 ) 문장 ;

중첩 if if( score >= 80 ) if( score >= 90 ) printf(" 당신의학점은 A입니다.\n"); if( score >= 80 ) if( score >= 90 ) printf(" 당신의학점은 A입니다.\n"); else printf(" 당신의학점은 B입니다.\n");

if 와 else 의매칭문제 if(score > 80) if( score >= 90) printf( 당신의학점은 A 입니다 \n ); else printf( 당신의학점은 B 입니다 \n ) if( score >= 80 ) { if( score >= 90 ) printf(" 당신의학점은 A입니다.\n"); } else printf(" 당신의학점은 A나 B가아닙니다.\n");

핵심예제 : 학점결정하기 성적이 90 점이상이면 A 학점, 80 점이상이고 90 점미만이면 B 학점, 70 점이상이고 80 점미만이면 C 학점과같이결정하는것이다.

소스 #include <stdio.h> int main(void) { int score; printf(" 성적을입력하시오 : "); scanf("%d", &score); } if (score >= 90) printf(" 합격 : 학점 A\n"); else if (score >= 80) printf(" 합격 : 학점 B\n"); else if (score >= 70) printf(" 합격 : 학점 C\n"); else if (score >= 60) printf(" 합격 : 학점 D\n"); else printf(" 불합격 : 학점 F\n"); return 0; 성적을입력하시오 : 88 학점 B

실습 : 이차방정식 1. 사용자에게이차방정식의계수 a, b, c를입력하도록한다. 2. 만약 a가 0이면근은 -c/b이다. 3. 판별식 4 가음수이면실근은존재하지않는다. 4. 위의조건에해당되지않으면다음과같은공식을이용하여실근을구한다. 4 2

알고리즘 사용자로부터 a, b, c를읽는다. if a == 0이면일차방정식의근을구한다. 실근을출력한다. else 판별식을계산한다. if 판별식 >= 0 근의공식을이용하여실근을구한다. 실근을출력한다. else 실근은없다는메시지출력 1. 사용자에게이차방정식의계수 a, b, c를입력하도록한다. 2. 만약 a가 0이면근은 -c/b이다. 3. 판별식 4 가음수이면실근은존재하지않는다. 4. 위의조건에해당되지않으면다음과같은공식을이용하여실근을구한다. 4 2

소스 #include <stdio.h> #include <math.h> int main(void) { double a, b, c, dis, value; printf(" 계수 a를입력하시오 :"); scanf("%lf", &a); printf(" 계수 b를입력하시오 :"); scanf("%lf", &b); printf(" 계수 c를입력하시오 :"); scanf("%lf", &c); if( a == 0 ) printf(" 방정식의근은 %f입니다.", -c/b); else { dis = b*b - 4.0*a*c;

소스 } } return 0; if( dis > 0 ) { value = sqrt(dis); printf(" 방정식의근은 %f입니다.\n", (-b+value)/(2.0*a)); printf(" 방정식의근은 %f입니다.\n", (-b-value)/(2.0*a)); } else if( dis == 0 ) printf(" 방정식의근은 %f입니다.\n", (-b)/(2.0*a)); else printf(" 실근이존재하지않습니다.\n");

Lab: 산술계산기 #include <stdio.h> int main(void) { char op ; int x, y, result; printf(" 수식을입력하시오 "); printf("( 예 : 2 + 5> "); printf(">>"); scanf("%d %c %d", &x, &op, &y); if( op == '+' ) result = x + y; 수식을입력하시오 else if( op == '-' ) ( 예 : 2 + 5) result = x - y; >>2 + 5 else if( op == '*' ) 2 + 5 = 7 result = x * y; else if( op == '/' ) result = x / y; else if( op == '%' ) result = x % y; else printf(" 지원되지않는연산자입니다. "); printf("%d %c %d = %d ", x, op, y, result); return 0; }

소스 #include <stdio.h> int main(void) { char op; int x, y, result; printf(" 수식을입력하시오 "); printf("( 예 : 2 + 5) "); printf(">>"); scanf("%d %c %d", &x, &op, &y);

소스 if( op == '+' ) result = x + y; else if( op == '-' ) result = x - y; else if( op == '*' ) result = x * y; else if( op == '/' ) result = x / y; else if( op == '%' ) result = x % y; else printf(" 지원되지않는연산자입니다. "); printf("%d %c %d = %d ", x, op, y, result); return 0; } 수식을입력하시오 ( 예 : 2 + 5) >>2 + 5 2 + 5 = 7

프로그램 1 알파벳이자음인지모음인지를판별하는프로그램을작성한다.

#include <stdio.h> int main() { char ch; printf(" 글자를입력하시오 : "); scanf(" %c", &ch); if (ch == 'a' ch == 'A' ch == 'e' ch == 'E' ch == 'i' ch == 'I' ch == 'o' ch == 'O' ch == 'u' ch == 'U') printf("%c 은모음입니다. \n", ch); else printf("%c 은자음입니다. \n", ch); return 0; }