컴퓨터 프로그램 제2,3장 간단한 C 프로그램 김 문 기.

Slides:



Advertisements
Similar presentations
03 변수와 자료형 세종대학교 최옥경 교수 참고 : 한빛미디어 뇌를 자극하는 C, INFINITY Perfect C.
Advertisements

제6장 조건문.
데이터의 표현과 연산 (1) (Chapter 3)
슬라이드 1~21까지는 각자 복습! 슬라이드 22부터는 수업시간에 복습
쉽게 풀어쓴 C언어 Express 제5장 수식과 연산자 C Express Slide 1 (of 34)
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
제3장 추가 실습 3장 관련 C 언어 프로그래밍 실습.
쉽게 풀어쓴 C언어 Express 제18장 입출력과 라이브러리 함수 C Express.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
컴퓨터의 기초 제 4강 - 표준 입출력, 함수의 기초 2006년 4월 10일.
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
6장. printf와 scanf 함수에 대한 고찰
누구나 즐기는 C언어 콘서트 제4장 수식과 연산자.
8장 포인터.
연산자 대입 연산자 산술 연산자 관계 연산자 논리 연산자 비트 연산자 콤마 연산자 축약 연산자 sizeof 연산자
변수와 자료형.
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 02. 프로그램의 기본구성.
C 9장. 구조체 #include <stdio.h> int main(void) { int num;
C 7장. 배열과 문자열 #include <stdio.h> int main(void) { int num;
기초C언어 제3주 C프로그램 구성요소, 변수와 자료형 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
컴퓨터 프로그래밍 기초 - 2nd : scanf(), printf() 와 연산자 -
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express.
Chapter 4 – 연 산 자 Outline 4.1 산술 연산자 4.2 관계 연산자 4.3 동등 연산자 4.4 논리 연산자
7장 배열 배열의 정의 배열의 초기화 1차원 배열 2차원 및 다차원 배열 문자 배열 배열과 구조.
표준 출력 함수 printf 출력 데이터 서식화(formatting) 표준 입력 함수 scanf 입력 데이터 서식화
Chapter 06. 선택문.
변수와 자료형.
Chapter 10. 포인터.
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
4주차: Data Types and Functions
5장. 상수와 기본 자료형. 5장. 상수와 기본 자료형 5-1 C 언어가 제공하는 기본 자료형 자료형(data type) 기본 자료형 사용자 정의 자료형 int val; "선언할 변수의 특징을 나타내기 위한 키워드" 기본 자료형 기본적으로 제공이 되는 자료형 사용자.
C 4장. 연산자 #include <stdio.h> int main(void) { int num;
2장 표준 입출력 표준 입출력 함수의 종류 형식화된 입출력 문자 입출력 문자열 입출력.
Chapter 4 수식과 연산자.
제2장 데이터형과 표준 입출력문 문봉근.
11장. 1차원 배열 IT응용시스템공학과 김 형 진 교수.
제 3 장 연산자 (Operators).
컴퓨터 프로그래밍 기초 - 4th : 수식과 연산자 -
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 05. 상수와 기본 자료형.
제어문 & 반복문 C스터디 2주차.
Chapter 04 자료 유형.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
게임프로그래밍 I - 1차원 배열 - 공주대학교 게임디자인학과 박 찬 교수 2011년 4월 25일.
Chapter 11. 배열과 포인터.
Chapter 04. 데이터의 표현과 연산(Ⅱ).
Chapter 05. 입출력 함수.
실습과제 1(조건문, ) 표준입력으로 수축기 혈압을 입력 받아 그에 따른 적당한 표현을 화면에 출력하는 프로그램을 if-else 문을 이용하여 작성.
학습목표 Chapter 2-1. 변수와 포인터 변수의 선언과 변수에 대한 메모리 할당을 살펴본다.
-Part2- 제1장 1차원 배열이란 무엇인가.
연산자Operators C언어의 기본 구조 도서출판 한산 C언어의 기본 구조 1: #include <stdio.h>
6장 반복제어문 for 문 while 문 do while 문 기타 제어문.
누구나 즐기는 C언어 콘서트 제2장 기초 사항 IT응용시스템공학과 김형진 교수.
-Part1- 제8장 조건문이란 무엇인가 (교재 199페이지 ~ 224페이지)
쉽게 풀어쓴 C언어 Express 제3장 C프로그램 구성요소 C Express Slide 1 (of 25)
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express Slide 1 (of 28)
컴퓨터 프로그램은 여러 기능의 복합체이다. 라이브러리 함수와 사용자 정의 함수
3주차: Control Flow and Others
어서와 C언어는 처음이지 제16장.
어서와 C언어는 처음이지 제23장.
C 4장. 연산자 #include <stdio.h> int main(void) { int num;
C.
개정판 누구나 즐기는 C언어 콘서트 제3장 변수와 자료형 출처: pixabay.
Chapter 09. 배열.
어서와 C언어는 처음이지 제22장.
3b장 구조체와 열거형 구조체의 정의 구조체 변수의 선언 구조체 초기화 및 사용 구조체 재정의 포인터를 이용해서 구조체 사용
11장. 1차원 배열.
Presentation transcript:

컴퓨터 프로그램 제2,3장 간단한 C 프로그램 김 문 기

chapter 02. Simple C Program 2.7 혼합 연산(mixed operation) 1. 연산 시 수행의 변화 - 연산 에서 서로 다른 자료형을 사용하는 경우, 보통 묵시적인 형변화(implicit type conversion)이 자동으로 이루어 진다. float a; a = ‘A’ + 7; - 문자와 숫자의 연산은 수형이 맞지 않아 수형변화가 이루어 진다. - 낮은 수형이 높은 수형의 데이터 형으로 변환된다. - 우변의 결과식은 정수형이다. 그러나 좌변의 자료형은 우변의 수형보다 그 범위가 크므로 좌변의 형으로 변환되어 저장된다. - 그러므로 결과값은 72.000000의 값을 갖는다. char < short, int, long < float < double

Ex13) int a; char ch; float b; a = 5. 7 + 4. 6;. /. 5. 7 + 4. 6은 10 Ex13) int a; char ch; float b; a = 5.7 + 4.6; /* 5.7 + 4.6은 10.3이다. 정수형에 저장될 때는 소수점 이하는 절삭 */ ch = ‘A’ + 7; /* ‘A’는 정수형으로 바뀌어 연산수행 (65 + 7) */ b = 3 + 8; /* 정수형 11이 b의 형으로 변환되어 저장된다. */ printf(“a = %d, ch = %c, b =%f\n”, a, ch, b); a = 5.7 + 7 / 2; /* 7/2 선행, 정수형/정수형의 결과는 정수형(3) */ /* 부동 소수점형 + 정수형은 부동 소수점형으로 바꾸어 연산(8.7)*/ /* 이를 정수형 변수에 기억시키므로 8 이라는 값만 저장된다. */ printf(“a = %d\n”, a);

2.8 케스트 연산자(cast operator : 형 변환 연산자) 형변환 연산자는 데이터형을 기술하여 강제적으로 형변환하는 방식을 취한다. int a; float b = 7.8;  a = (int) b; 선업된(할당된) 기억 장소를 다른 형의 기억 장소로 변경하고자 할 때 사용 ex14) int a = 5, b =3, c, d; float x, y; c = (int) 5.7 + (int) 4.6; d = 5.7 + 4.6; printf(“c = %d, d = %d \n”, c, d); x = a / b; y = (float) a / (float) b; printf(“x = %f, y = %f \n”, x, y);

3.1 2 진수, 8 진수(0으로 시작), 10 진수 , 16 진수(0x로 시작) chapter 03. 데이터 표현 방식의 이해 3.1 2 진수, 8 진수(0으로 시작), 10 진수 , 16 진수(0x로 시작) 2 진수 8 진수 10 진수 16 진수

3.2 데이터 표현 단위 ( bit, byte) - I 2 바이트 1 바이트 1 비트

3.2 데이터 표현 단위 ( bit, byte) – I Ex)

3.3 8진수 10진수 16진수 계산하기 Ex) 0xa7 = 167 0x43 = 67 032 = 26 = 24 032 = 26 = 24 int a = 167; printf(“%d %o %x\n”, a, a, a);

3.4 수의 표현 방식 - I 모든 정수의 가장 왼쪽에 있는 비트는 부호 비트이다. 정수 + 1에 할당된 메모리 공간 데이터 크기 표현 부호비트 : 양수는 0, 음수는 1 ( +, - )

3.4 수의 표현 방식 - II 음수를 표현할 때에는 2의 보수 체계를 기억해야 한다. 정수 + 1에 할당된 메모리 공간 +5 1의 보수 1을 더한다. -5 Ex) 다음을 10진수로 나타내어라. 01001111 11110000

chapter 02. Simple C Program 2.9 논리 연산자 (!:NOT, &&:AND, ||:OR) ! : 참이면 거짓, 거짓이면 참 && : 모두 참 일 때만 참 ||: 둘 중 하나라도 참이면 참 ex15) main() { int a=5, b=0; printf(“참 = %d\n”, a||b); printf(“거짓 =%d\n”, a&&b); }

chapter 02. Simple C Program 2.9 논리 연산자 (!:NOT, &&:AND, ||:OR) ex16) main() { int p, x=3, y=4, z=0; p=x+3 || y-4; printf(“%d\n”, p); p=y-3 || z; printf(“%d\n”, p); p=x>y && y>=0; printf(“%d\n”, p); }

chapter 02. Simple C Program 2.10 비트 논리 연산자 : 2진수로 변환하여 비트 별로 논리 연산을 수행한다. : &연산이 | 연산보다 우선 순위가 더 높다. : !연산이 & 연산보다 우선 순위가 더 높다. : 논리보다 비트 연산이 우선 순위가 더 높다. Ex17) int x = 7, y = 9; x & y = ? x | y = ? x^y = ? ~x = ?

2.11 기타 연산자 : 선택 연산자, 쉬프트 연산자, sizeof 연산자; 1. 선택 연산자 ( 논리식 & 관계식) ? 실행문(1) : 실행문(2) : 논리식 & 관계식이 참이면 실행문(1)을, 거짓이면 실행문(2)를 실행한다. Ex18) int a=6, b =7, max; max = (a>b) ? a : b; printf(“MAX = %d\n”, max);

2. 쉬프트(shift) 연산자 : 정수형 자료에만 사용할 수 있다. : 좌측으로 비트 이동 시 빈자리에 삽입되는 비트는 항상 0 이고, 우측 이동 시 부호 비트와 동일한 비트가 삽입된다. : 좌측 쉬프트는 정수의 곱셈에, 우측 쉬프트는 정소의 나눗셈에 응용된다.

Ex 19) #include <stdio.h> int main(void){ int a = 1, b =-1; a <<=3; printf(“%d\n”, a); b <<=3; printf(“%d\n”, b); b >>=3; return 0; }

- sizeof 연산자는 괄호 안의 인수에 대해 할당하는 기억 장소의 크기를 바이트 단위로 되돌려 준다. 이때 인수로서는 정수형 상수, 변수, 데이터 형 구조체 등이 올 수 있다. 즉, 인수에 대해서 컴파일러가 할당한 기억 장소의 크기를 바이트 단위로 변수 a에 되돌려 준다. a = sizeof(인수); Ex 20) int a; float b; char ch; double c; printf("변수 a의 기억 장소의 크기 : %d\n", sizeof(a)); printf("변수 b의 기억 장소의 크기 : %d\n", sizeof(b)); printf("변수 c의 기억 장소의 크기 : %d\n", sizeof(c)); printf("변수 ch의 기억 장소의 크기 : %d\n", sizeof(ch));

chapter 04. 표준 입출력 함수

4.1printf( )와 scanf( ) 4.1.1 printf(printf formatted) : 데이터를 원하는 형탤로 서식에 맞추어 화면에 출력 1. 형식 : 인수들은 서식 문자열 내의 변환 문자의 형태로 바꾸어 출력 printf(“서식 문자열”, 인수들); ex) printf(“%d, %f, %c, %o, %x”, a, b, cd, c, d); printf(“%d, %f, %c, %o, %x\n”, a, b, cd, c, d);

4.1.2 제어 문자

Ex 22) int a = 10; float b = 3; double c; float d = 65; char ch[6] = "HAPPY"; char ch2[6] ="world"; c = a/b; printf("(1)%3d , %6.3Lf\n", a, c); printf("(2)%7.3f, %6.3f\n", (double)a, c); printf("(3)%9.5f\n", c); printf("(4)%5s\n", ch); printf("(5)\t%s\n", ch); printf("(6) %s\n", ch); printf("(7)%s\r%s\n", ch, ch2); printf("(8)%f, %d\n", d, (int)d); printf("(9)%d\n", 2+3); printf("(10)\n\n"); printf("(11)%f, %f, %.14f\n", (double)a, (double)b, (double)c); printf("(12)%Lf, %Lf, %.18f\n", (long double)a, (long double)b, (long double)c); printf("(13)변수 a의 기억 장소의 크기 : %d\n", sizeof(a)); printf("(14)변수 b의 기억 장소의 크기 : %d\n", sizeof(b)); printf("(15)변수 c의 기억 장소의 크기 : %d\n", sizeof(c)); printf("(16)변수 ch의 기억 장소의 크기 : %d\n", sizeof(ch)); printf("(17)\n\n");

4.1.3 scanf( ) : 키보드로부터 서직에 맞추어 다양한 형태의 데이터를 입력 받는다. 1. 형식 scanf(“ 서식 문자열”, 인수들); ex) scanf(“%d %d”, &a, &b); //옳은 표현 scanf(“입력 = %d %d”, &a, &b); //틀린 표현

Ex 22) int a, b, hap; scanf(“%d %d”, &a, &b); hap = a + b; printf(“ 두 수의 합 = %d\n”, hap); /* 변수와 주소의 이해 */ Ex 23) int a = 200; printf(“a에 저장된 값 = %d\n”, a); printf(“변수 a의 주소 = %u\n”, &a);