안녕하세요? 허니입니다. 오늘은 C 언어의 printf와 scanf 함수에 대해 포스팅 하려고 합니다. 학생이나 연구원분들에게 많은 도움이 될 것이라고 생각하며 언제든지 질문은 환영입니다.


5장. C 언어 printf와 scanf 함수.pptx
0.16MB



언어란?
printf와 scanf 함수


5.1. printf & scanf 함수
• printf는 문자열을 출력하는 함수이다. 
• printf는 특수 문자 출력이 가능하다.
• 특수 문자가 필요한 이유
 잘못된 문자열 출력
• printf 함수는 서식 지정이 가능하다.
 printf의 f는 "formatted"를 의미한다.
 서식 지정 : 출력의 형태를 지정한다는 의미 (ex : 문자열 안에 숫자 삽입)
 서식 지정의 예
• 서식 문자의 종류와 그 의미
• %c, %d, %f, %s
 가장 많이 쓰이는 서식 문자들
• %o, %u, %x, %X
 부호 없는 정수형 출력
• %e, %E
 '부동소수점 표현 방식'에 의한 출력
• %g, %G
 표현하고자 하는 실수의 값이 소수점 이하 6자리인 경우 %f의 형태로 출력
 이 범위를 넘길 경우 %e의 형태로 출력
• 필드 폭을 지정하여 멋진 출력을!
 서식 문자를 이용해서 출력의 폭 지정 가능
• scanf 함수의 입력 형태 정의
 데이터를 입력받는 형태를 지정할 수 있다. 즉 입력 서식을 지정하는 것이다.  예 : "%d %o %x"
• 실수 입력에 있어서 주의사항
 정밀도 생각!
 소수 6자리 이하의 실수 입력 시 %f 사용
 소수 6자리를 넘는 실수 입력 시 %e 사용
 단! double형 변수를 사용하는 경우에는 서식 문자 %le를 사용

안녕하세요? 허니입니다. 오늘은 C 언어에서 사용하는 상수와 기본 자료형에 대해 포스팅 하려고 합니다. 학생이나 연구원분들에게 많은 도움이 될 것이라고 생각하며 언제든지 질문은 환영입니다.


4장. C 언어 상수와 기본 자료형.pptx
0.27MB


 


C 언어란?
상수와 기본 자료형
4.1. C 언어가 제공하는 기본 자료형
• 자료형(data type)
 "선언할 변수의 특징을 나타내기 위한 키워드"
• 기본 자료형
 기본적으로 제공이 되는 자료형
• 사용자 정의 자료형
 사용자가 정의하는 자료형 : 구조체, 공용체
• 기본 자료형 종류와 데이터의 표현 범위
• 다양한 자료형이 제공되는 이유
 데이터의 표현 방식이 다르기 때문
– 정수형 데이터를 표현하는 방식
– 실수형 데이터를 표현하는 방식
 메모리 공간을 적절히 사용하기 위해서
– 데이터의 표현 범위를 고려해서 자료형 선택
– 작은 메모리 공간에 큰 데이터를 저장하는 경우 데이터 손실이 발생할 수 있음
• sizeof 연산자
 피연산자의 메모리 크기를 반환
 피연산자로 자료형의 이름이 올 경우 괄호를 사용
 그 이외의 경우 괄호의 사용은 선택적
• 자료형 선택의 기준
 정수형 데이터를 처리하는 경우
– 컴퓨터는 내부적으로 int형 연산을 가장 빠르게 처리, 따라서 정수형 변수는 int형으로 선언
– 범위가 int형 변수를 넘어가는 경우 long형으로 선언
– 값의 범위가 –128 ~ +127 사이라 할지라도 int형으로 선언
• 자료형 선택의 기준
 실수형 데이터를 처리하는 경우
– 선택의 지표는 정밀도
– 정밀도란 오차 없이 표현 가능한 정도를 의미함
– 오늘날의 일반적 선택은 double!
• unsigned가 붙어서 달라지는 표현의 범위
 MSB까지도 데이터의 크기를 표현하는데 사용
 양의 정수로 인식
 실수형 자료형에는 붙일 수 없다.
• 문자 표현을 위한 ASCII 코드의 등장
 미국 표준 협회(ANSI)에 의해 정의
 컴퓨터를 통해서 문자를 표현하기 위한 표준
– 컴퓨터는 문자를 표현하지 못함
 문자와 숫자의 연결 관계를 정의
– 문자 A는 숫자 65, 문자 B는 숫자 66…
• ASCII 코드의 범위
 0이상 127이하, char형 변수로 처리 가능
 char형으로 처리하는 것이 합리적
• 문자의 표현
 따옴표(' ')를 이용해서 표현


4.2. 상수에 대한 이해
• 리터럴(literal) 상수 
 이름을 지니지 않는 상수
• 리터럴 상수의 기본 자료형
 상수도 메모리 공간에 저장되기 위해서 자료형이 결정된다.
• 리터럴 상수의 기본 자료형
• 접미사에 따른 다양한 상수의 표현
• 심볼릭(symbolic) 상수
 이름을 지니는 상수
• 심볼릭 상수를 정의하는 방법
 const 키워드를 통한 변수의 상수화
 매크로를 이용한 상수의 정의
• const 키워드에 의한 상수화
• 잘못된 상수 선언


4.3. 자료형 변환
• 자료형 변환의 두 가지 형태
 자동 형 변환
– 자동적으로 발생하는 형태의 변환을 의미한다.
– 묵시적 형 변환이라고도 표현한다.
 강제 형 변환
– 프로그래머가 명시적으로 형 변환을 요청하는 형태의 변환
– 명시적 형 변환이라고도 표현한다.
• 자동 형 변환이 발생하는 상황 1
 대입 연산 시
• 자동 형 변환이 발생하는 상황 2
 정수의 승격에 의해(int형 연산이 빠른 이유)
 정수형 연산 자체를 단일화시킨 결과
• 자동 형 변환이 발생하는 상황 3
 산술 연산 과정에 의해
• 산술 연산 형 변환 규칙
 데이터의 손실이 최소화되는 방향으로...
• 강제 형 변환
 프로그래머의 요청에 의한 형 변환

안녕하세요? 허니입니다. 오늘은 C 언어에서 데이터를 표현하는 방식에 대해 포스팅 하려고 합니다. 학생이나 연구원분들에게 많은 도움이 될 것이라고 생각하며 언제든지 질문은 환영입니다.

 


다운로드



 

C 언어란?
데이터 표현 방식


3.1. 컴퓨터 데이터 표현
• 진법에 대한 이해
 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현
• 2진수와 10진수
 10진수 : 0~9를 이용한 데이터의 표현
 2진수 : 0과 1을 이용한 데이터의 표현
 컴퓨터는 내부적으로 모든 데이터 2진수로 처리
• 16진수와 10진수
 16진수 : 0~9, a, b, c, d, e, f를 이용한 데이터의 표현
• 데이터의 표현 단위인 비트(bit)와 바이트(byte)
 비트 : 데이터 표현의 최소 단위, 2진수 값 하나 (0 or 1)을 저장
 바이트 : 8비트 == 1바이트
• 프로그램상에서의 8진수, 16진수 표현
 8진수 : 0으로 시작
 16진수 : 0x로 시작


3.2. 정수와 실수의 표현 방식
• 정수의 표현 방식
 MSB : 가장 왼쪽 비트, 부호를 표현
 MSB를 제외한 나머지 비트 : 데이터의 크기 표현
• 잘못된 음의 정수 표현 방식
 양의 정수 표현 방식을 적용한 경우
• 정확한 음의 정수 표현 방식
 2의 보수를 이용한 음의 정수 표현 방식
• 음수 표현 방식의 증명
• 잘못된 실수의 표현 방식
 정수를 표현하는 방식을 실수 표현에 적용
 작은 수를 표현하는데 있어서 한계를 지님
• 정확한 실수 표현 방식
 오차가 존재하는 단점을 지님, 그러나 효율적인 표현 방식


3.3. 비트 단위 연산
• 비트 단위 연산자의 종류
• & 연산자 : 비트 단위 AND
• | 연산자 : 비트 단위 OR
• ^ 연산자 : 비트 단위 XOR
• ~ 연산자 : 비트 단위 NOT
• << 연산자 : 왼쪽 쉬프트(shift) 연산
• >> 연산자 : 오른쪽 쉬프트(shift) 연산

안녕하세요? 허니입니다. 오늘은 C 언어의 변수와 연산자에 대해 작성해 보려고 합니다. 학생이나 연구원분들에게 많은 도움이 될 것이라고 생각하며 언제든지 질문은 환영입니다.

 


2장. C 언어 변수와 연산자.pptx
0.25MB



C 언어란?
변수와 연산자편
2.1.  연산자, 덧셈 연산자
• 연산자란 무엇인가?
 연산을 요구할 때 사용되는 기호
 ex : +, -, *, /


2.2. 데이터 저장을 위한 변수
• 변수란 무엇인가?
 데이터를 저장할 수 있는 메모리 공간에 붙여진 이름
• 다양한 형태(자료형)의 변수
 정수형 : char, int, long
 실수형 : float, double
• 변수의 선언 및 대입 
 대입 연산자(=): 값을 대입하기 위한 용도의 연산자
• 변수를 이용한 예제
• 변수 선언 시 주의 사항 1
 변수를 함수 내에 선언할 경우, 등장 위치!
• 변수 선언 시 주의 사항 2
 첫째 : 변수의 이름은 알파벳, 숫자 언더바(_)로 구성
 둘째 : 대 소문자 구분
 셋째 : 변수의 이름은 숫자로 시작 불가, 키워드 사용 불가
 넷째 : 공백이 포함될 수 없음
• 완성된 덧셈 프로그램
• 변수와는 다른 상수!
 상수도 메모리 공간을 할당 받는다. 하지만 데이터의 변경이 불가능하다.

 

2.3.  C 언어의 다양한 연산자
• 대입 연산자와 산술 연산자
• 기타 대입 연산자
 대입 연산자와 산술 연산자가 합해져서 다양한 형태의 대입 연산자 정의
• 부호 연산으로서 +, - 연산자
 단항 연산자로서 +, -
• 증가 감소 연산자
• 관계 연산자(비교 연산자)
 두 피연산자의 관계(크다, 작다 혹은 같다)를 따지는 연산자
 true(논리적 참, 1), false(논리적 거짓, 0) 반환
 예제 op6.c, 표 3-4 참조
• 논리 연산자
 and, or, not을 표현하는 연산자
 true(1), false(0) 반환
• 비트 단위 연산자
 ~, &, ^, |, <<, >>
• 콤마(,) 연산자
 둘 이상의 변수 동시 선언 시
 둘 이상의 문장을 한 줄에 선언 시
 함수의 매개변수 전달 시
• 연산자의 우선 순위
 연산 순서를 결정짓는 순위
• 연산자의 결합성
 우선 순위가 같은 연산자들의 연산 방향

 

2.4. scanf 함수의 이해
• scanf 함수를 이용한 정수의 입력
• scanf 함수를 이용한 입력 형태의 지정
 입력 형태의 지정이 가능


2.5. C 언어의 키워드들
• C99를 기준으로 표준화된 키워드들

안녕하세요? 허니입니다. 오늘부터 C 언어에 대해 작성해 보려고 합니다. C 언어는 프로그래밍을 시작하는 초보 개발자들이 입문하는 언어로 C 언어 외에도 파이썬, C++, JAVA 등 언어는 많습니다.(: 학생이나 연구원분들에게 많은 도움이 될 것이라고 생각하며 언제든지 질문은 환영입니다.


1장. C 언어 이해와 프로그램의 기본 구성.pptx
0.47MB



 

C 언어란? 
C 언어 이야기 & 프로그램 기본 구성 
1.1. C 언어 이야기 
• 프로그래밍 언어란 무엇인가? 
 사람과 컴파일러가 이해할 수 있는 약속된 형태의 언어 
 C 언어도 프로그래밍 언어 중 하나이다. 
• 컴파일이란 무엇인가? 
 프로그래밍 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있도록 기계어로 번역해 주는 역할을  
하는 번역기 
• C 언어의 장점 
 익숙해지는데 오랜 시간이 걸리지 않는다. 
 이식성이 좋다. 
 효율성이 높다. 
• C 언어의 단점 
 프로그래밍 하는데 많은 주의를 요한다. 
 완전한 고급 언어에 비해 상대적으로 어렵다.


1.2. 프로그램의 완성 과정 
• 프로그램 작성 및 실행 순서 
 1. 프로그램 작성 
 2. 컴파일 
 3. 링크 
 4. 실행파일 생성


1.3. 프로그램의 기본 구성 “Hello, World” 
• 함수에 대한 이해 
 적절한 입력과 그에 따른 출력이 존재 하는 것을 가리켜 함수라 한다. 
 C 언어의 기본 단위는 함수이다. 
• 함수 호출과 인자 전달 
 인자 전달 : 입력 x를 전달하는 행위 
 함수 호출 : 인자를 전달하면서 함수의 실행을 요구하는 행위 
• C 언어의 함수 특성 
 입력과 출력 존재 
 순차적으로 실행 
 함수의 기능을 정의하는 몸체 부분 존재 
• 예제 Hello.c에서의 함수 
• 세미콜론이 필요한 문장 
 연산을 수행하는 문장 : 시간의 흐름에 따라서 컴퓨터에게 "이러 이러한 일을 해라"라고 명령을 하는 문장 
• 표준 라이브러리에 대한 이해 
 이미 표준화 해서 만들어 놓은 함수들의 집합을 가리켜 표준 라이브러리라 한다. 
 헤더 파일을 포함해야 사용이 가능하다. 
• 헤더 파일의 이해 
 stdio.h 라는 이름의 헤더 파일 
 헤더 파일의 포함을 알리는 선언은 제일 먼저 등장해야 한다.  
• return의 의미 
 함수를 종료(빠져 나온다). 
 함수를 호출한 영역으로 값을 반환 
• return의 특징 
 return은 함수 내에서 존재 하지 않을 수도 있다.  
 둘 이상의 return문이 존재하는 것도 가능


1.4. 주석에 대한 이해 
• 주석이란? 
 프로그래머에게 메모(memo)의 기능을 부여 
 컴파일러는 주석을 없는 것으로 간주 
 주석을 삽입 함으로 인해 프로그램의 가독성 증가 
 선택이 아닌 필수! 
• 주석의 두 가지 형태 
 여러 줄에 걸친 주석 처리 
 단일 행 주석 처리 
• 주석의 예 
• 주석 처리에 있어서의 주의점 
 주석을 나타내는 기호는 중복될 수 없다. 
 단, 단일 행 주석은 중복 가능하다.


1.5. printf 함수의 기본적 이해 
• printf 함수 사용의 예 1• printf 함수 호출의 이해 1 
• printf 함수 호출의 이해 2 : 서식 문자 
 서식 문자(Conversion specifier)란 출력 대상의 출력 형태를 지정하기 위한 문자 
• printf 함수 호출의 이해 3 
• printf 함수 사용의 예 2 
• printf 함수 호출의 이해 4

+ Recent posts