Chapter 05. 입출력 함수.

Slides:



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

제6장 조건문.
프로그래밍1 및 실습 (C언어) - 3장 기본자료형 (3.6부터 끝까지) -
2007 1학기 12 배열.
데이터의 표현과 연산 (1) (Chapter 3)
슬라이드 1~21까지는 각자 복습! 슬라이드 22부터는 수업시간에 복습
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
2014 ITA 8월 강의 C Programming -1주차- C언어 기초 정대진 ( )
제3장 추가 실습 3장 관련 C 언어 프로그래밍 실습.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
컴퓨터의 기초 제 4강 - 표준 입출력, 함수의 기초 2006년 4월 10일.
6장. printf와 scanf 함수에 대한 고찰
누구나 즐기는 C언어 콘서트 제4장 수식과 연산자.
Chapter 13 문자 데이터와 문자열 문자 데이터 문자열.
7. while 문의 흐름 제어.
연산자 대입 연산자 산술 연산자 관계 연산자 논리 연산자 비트 연산자 콤마 연산자 축약 연산자 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.
7장 배열 배열의 정의 배열의 초기화 1차원 배열 2차원 및 다차원 배열 문자 배열 배열과 구조.
10장 포인터와 문자열 포인터 기본 배열과 포인터 매개변수 전달방법 포인터와 문자열.
표준 출력 함수 printf 출력 데이터 서식화(formatting) 표준 입력 함수 scanf 입력 데이터 서식화
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Chapter 06. 선택문.
변수와 자료형.
Chapter 10. 포인터.
내용 프로그래밍 언어(programming language) C 언어란?? C 언어 역사 C 언어 특징 C 프로그램의 구조
쉽게 풀어쓴 C언어 Express 제7장 반복문 C Express.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
쉽게 풀어쓴 C언어 Express 제4장 변수와 자료형 C Express.
2장 표준 입출력 표준 입출력 함수의 종류 형식화된 입출력 문자 입출력 문자열 입출력.
개정판 누구나 즐기는 C언어 콘서트 제6장 반복문 출처: pixabay.
제2장 데이터형과 표준 입출력문 문봉근.
2019년 2월 24일 오후 4시 59분 제2장 표준 입출력 함수
11장. 1차원 배열 IT응용시스템공학과 김 형 진 교수.
Formatted Input/Output
컴퓨터 프로그래밍 기초 - 4th : 수식과 연산자 -
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 05. 상수와 기본 자료형.
제어문 & 반복문 C스터디 2주차.
Chapter 04 자료 유형.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
컴퓨터 프로그램 제2,3장 간단한 C 프로그램 김 문 기.
게임프로그래밍 I - 1차원 배열 - 공주대학교 게임디자인학과 박 찬 교수 2011년 4월 25일.
Chapter 11. 배열과 포인터.
Chapter 04. 데이터의 표현과 연산(Ⅱ).
실습과제 1(조건문, ) 표준입력으로 수축기 혈압을 입력 받아 그에 따른 적당한 표현을 화면에 출력하는 프로그램을 if-else 문을 이용하여 작성.
학습목표 Chapter 2-1. 변수와 포인터 변수의 선언과 변수에 대한 메모리 할당을 살펴본다.
6장 반복제어문 for 문 while 문 do while 문 기타 제어문.
누구나 즐기는 C언어 콘서트 제2장 기초 사항 IT응용시스템공학과 김형진 교수.
-Part1- 제6장 자료형이란 무엇인가.
-Part1- 제8장 조건문이란 무엇인가 (교재 199페이지 ~ 224페이지)
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express Slide 1 (of 28)
컴퓨터 프로그램은 여러 기능의 복합체이다. 라이브러리 함수와 사용자 정의 함수
쉽게 풀어쓴 C언어 Express 제6장 조건문 C Express.
실습과제 1번 생성된 파일 basic.txt를 프로젝트 폴더에서 메모장으로 열고 내용을 확인
3주차: Control Flow and Others
박성진 컴퓨터 프로그래밍 기초 [03] 변수와 자료형 박성진
어서와 C언어는 처음이지 제16장.
어서와 C언어는 처음이지 제23장.
C 4장. 연산자 #include <stdio.h> int main(void) { int num;
printf("Global Korea\n");
개정판 누구나 즐기는 C언어 콘서트 제3장 변수와 자료형 출처: pixabay.
Chapter 09. 배열.
3b장 구조체와 열거형 구조체의 정의 구조체 변수의 선언 구조체 초기화 및 사용 구조체 재정의 포인터를 이용해서 구조체 사용
11장. 1차원 배열.
Presentation transcript:

chapter 05. 입출력 함수

printf함수 제대로 사용하기 printf함수는 출력할 데이터를 괄호 안에 넣어주는데 이것을 전달인자라고 한다. 전달인자의 수는 출력되는 값에 따라 가변적이지만 첫번째는 반드시 문자열을 사용해야 한다.

문자열을 그대로 화면에 출력하는 경우에 사용한다. ▶ 전달인자가 문자열 하나인 경우 문자열을 그대로 화면에 출력하는 경우에 사용한다. printf(“C언어는 1972년 데니스리치가 개발하였습니다.”); C언어는 1972년 데니스리치가 개발하였습니다. 서식문자를 사용하면 다양한 형태로 출력할 수 있다. printf(“C언어는\n1972년\n데니스리치가 개발하였습니다.”); C언어는 1972년 데니스리치가 개발하였습니다.

▶ 다양한 서식문자 서식문자에는 줄바꿈문자 외에도 여러 가지가 있다. 의미 기능 \n newline 출력 위치를 다음 줄의 첫번째 칸으로 옮긴다. \t tab 출력 위치를 다음 탭 위치로 옮긴다. \r carriage return 출력 위치를 현재 줄의 첫번째 칸으로 옮긴다. \b backspace 출력 위치를 한 칸 뒤로 옮긴다. \a alert 경보음을 낸다(삑 소리가 난다). 큰 따옴표나 백슬래시 자체를 출력할 때도 백슬래시를 사용한다.

▶ 문자열 외에 출력할 데이터가 있는 경우 단순한 문자열 외에 출력할 데이터가 있는 경우 출력할 데이터의 개수에 맞게 변환문자열을 사용한다.

자료형에 따른 변환문자열의 사용은 다음과 같다. ▶ 변환문자열 정리 자료형에 따른 변환문자열의 사용은 다음과 같다. 구분 변환문자열 출력 형태 대상 자료형 정수형 %d 부호 있는 10진수 signed형의 정수형 변수, 상수 %u 부호 없는 10진수 unsigned형의 정수형 변수, 상수 %o 부호 없는 8진수 signed, unsigned 구분 없이 정수형 데이터를 각 진법에 맞게 출력 %x 부호 없는 16진수 실수형 %lf 부호 있는 소수점 형태 실수형 변수, 상수 %le 부호 있는 지수 형태 문자형 %c 하나의 문자 char형 변수, 문자상수 문자열 %s char형 배열의 이름, 문자열상수

▶ 다양한 변환문자열을 사용한 예제 #include <stdio.h> int main() { char ch='A'; char name[80]="황금박쥐"; int in=10; double db=16.8; printf("정수형 상수의 출력 : %d\n", -10); printf("정수형 변수의 출력 : %d\n", in); printf("정수형 수식의 출력 : %d\n", in/3); printf("실수형 상수를 소수점 형태로 출력 : %lf\n", 2.5); printf("실수형 변수를 지수 형태로 출력 : %le\n", db); printf("실수형 수식을 소수점 형태로 출력 : %lf\n", db/4); printf("문자상수의 출력 : %c\n", 'F'); printf("문자변수의 출력 : %c\n", ch); printf("문자 배열의 출력 : %s\n", name); printf("문자열상수의 출력 : %s\n", "날아라 태극호"); return 0; } 출력 형태 -10 10 3 2.500000 1.680000e+001 4.200000 F A 황금박쥐 날아라 태극호

변환문자열의 정확한 사용법 컴파일러는 변환문자열과 출력할 데이터가 일치하는지 확인하지 않는다. 따라서 자료형에 맞게 정확한 변환문자열을 사용해야 한다.

%d와 %u는 출력할 데이터를 각각 다르게 해석한다. 정수값의 각 범위에 맞는 적절한 변환문자열은 다음과 같다.

▶ 정수형과 문자형 변환문자열의 선택(%d, %c) 문자상수와 그에 해당하는 아스키코드값은 크기가 같으므로 어떤 변환문자열을 사용하느냐에 따라 정수값이 출력되거나 문자가 출력된다. 특정 아스키코드값에 해당하는 문자를 확인하는 코드 int a; // char형 변수를 사용해도 가능하다. printf(“아스키코드값을 입력하세요 : ”); scanf(“%d”, &a); printf(“아스키문자는 %c입니다.\n”, a); 아스키코드값을 입력하세요 : 97 (엔터) 아스키문자는 a입니다. %문자를 출력할 때는 %기호를 두 번 사용한다. printf(“당신은 나의 100%% 여인입니다.”);

세련된 출력을 지원하는 변환문자열의 옵션 필드옵션은 화면에 출력할 자릿수를 확보하고 오른쪽에 정렬하여 출력한다. 실수값을 출력할 때는 필드옵션에 소수점 이하의 자릿수를 지정할 수 있다. 플래그옵션은 필드옵션과 함께 사용하여 출력 형식에 변화를 준다.

▶ 필드옵션의 여러 가지 사용 예 #include <stdio.h> int main() { printf("12345678901234567890\n"); printf("%10c\n", 'A'); printf("%10d\n", 128); printf("%10lf\n", 3.1415926); printf("%10le\n", 3.1415926); printf("%10.3lf\n", 3.1415926); printf("%10.4s\n", "Love is"); printf("%5lf\n", 3.1415926); return 0; } 출력 형태 12345678901234567890 A 128 3.141593 3.141593e+000 3.142 Love

▶ 여러 가지 플래그 옵션 필드옵션을 사용하고 왼쪽에 맞추어 출력할 때는 ‘-’플래그를 사용한다. ‘0’플래그는 확보된 공간에서 남는 왼쪽공간을 모두 0으로 채운다. ‘+’플래그는 부호를 함께 출력한다. ‘#’플래그는 8진수와 16진수를 출력할 때 접두어를 붙여준다. 출력 형태 printf("12345678901234567890\n"); printf(“%-10c%c\n”, ‘A’, ‘B’); printf(“%010d\n”, 1971); printf(“%+d\n”, 128); printf(“%#x\n”, 2005); printf(“%#010x\n”, 0x7d5); 12345678901234567890 A B 0000001971 +128 0x7d5 0x000007d5

scanf함수의 첫번째 전달인자는 변환문자열이며 두 번째 전달인자부터 입력 받을 변수를 차례로 나열한다. scanf(“%d %c\n”, &age, &blood_type); 불필요한 문자!!

▶ scanf함수의 기본적인 사용법 입력에 사용되는 변환문자열은 기본적으로 printf함수와 같다. 구분 변환문자열 입력 형태 입력되는 변수의 자료형 정수형 %d, %u 10진수 char, short, int, long형 변수 %o 8진수 %x 16진수 실수형 %lf, %le 소수점 또는 지수형 double형 변수 문자형 %c 하나의 문자 char형 변수 문자열 %s 하나의 문자열 char 배열 scanf함수는 값을 저장할 변수의 위치를 알아야 하므로 변수명에 ‘&’를 붙여야 한다(단, 배열명에는 붙이지 않는다).

▶ scanf함수는 변환문자열을 정확히 사용해야 한다. scanf함수는 입력 데이터의 구분을 화이트스페이스(스페이스, 엔터, 탭)으로 한다(%d, %lf, %s변환문자열). scanf(“%d%d”, &a, &b); 10 20 (엔터) 공백으로 데이터를 구분 %c변환문자열은 화이트스페이스도 하나의 데이터로 입력 받는다. scanf(“%c%c”, &a, &b); x y (엔터) 공백을 데이터로 입력 화이트스페이스를 구분문자로 사용하기 위해서는 %c변환문자열 앞에 공백을 사용한다. scanf(“%c %c”, &a, &b); 공백을 사용하면 b에 y를 입력 받게 된다.