2장 표준 입출력 표준 입출력 함수의 종류 형식화된 입출력 문자 입출력 문자열 입출력
표준 입 • 출력 함수의 종류 표준 입 • 출력 함수의 종류 표준 입 • 출력 함수의 종류 표준 입 • 출력 함수의 예 형식화된 입 • 출력 scanf(), printf() 문자 입 • 출력 getchar, putcahr() 문자열 입 • 출력 gets(), puts()
형식화된 입 • 출력 02 printf() 함수 scanf() 함수 printf(“제어 문자열(Format-String”); scanf(“제어 문자열”(Format-String), &변수1, &변수2....);
형식화된 입 • 출력 02 변환 기호 의 미 %d 매개변수의 내용을 부호 있는 10진 정수로 변환하여 출력 %0 의 미 %d 매개변수의 내용을 부호 있는 10진 정수로 변환하여 출력 %0 매개변수의 내용을 부호 없는 8진 정수로 변환하여 출력 %x 매개변수의 내용을 부호 없는 16진 정수로 변환하여 출력 %u 매개변수의 내용을 부호 없는 10진 정수로 변환하여 출력 %e 매개변수의 내용을 지수 형태로 출력 (부동소수점 형태) %f 매개변수의 내용을 실수 형태로 출력 (부동소수점 형태) %g 매개변수의 내용을 %e 또는 %f의 변환 중 문자수가 적은 쪽으로 출력시키며 이때 유효하지 않는 0은 출력되지 않음 %c 매개변수의 내용을 한 개의 문자로 인식하여 출력 %s 매개변수의 내용을 문자열로 인식하여 출력 %n %n 이 나타날 때까지 출력한 문자수를 해당 인수에 저장 %ld 매개변수를 long형 10진수로 출력 %lu 매개변수를 long형 부호 없는 10진 정수로 변환하여 출력 매개변수를 double형 실수 형태로 출력 (부동소수점 형태)
【예제 2-1】Ex1.c 02 “안녕하세요!”를 출력 01 #include <stdio.h> 02 int main(void) 03 { 04 printf("안녕하세요!"); 05 return 0; 06 } 표준입력 스트림
【예제 2-2】Ex2.c 02 이름과 나이 출력 01 #include <stdio.h> 02 int main(void) 03 { 04 int age = 20; 05 printf("저는 이름이 김경영이고 나이는 %d 입니다.\n", age); 06 return 0; 07 } 표준입력 스트림
【예제 2-3】Ex3.c 02 8진수 16진수 예제 01 #include <stdio.h> 02 int main(void) 03 { 04 int Number = 65; 05 printf("65을 8진수로 변환 : %o\n", Number); 06 printf("65을 10진수로 변환 : %d\n", Number); 07 printf("65을 16진수로 변환 : %x\n", Number); 08 printf("65을 문자형으로 변환 : %c\n", Number); 09 return 0; 10 } 표준입력 스트림
【예제 2-4】Ex4.c 02 Scanf( ) 예제 01 #include <stdio.h> 02 int main(void) 03 { 04 int age = 0; 05 printf("당신의 나이를 입력하세요\n"); 06 scanf("%d", &age); 07 printf("당신의 나이는 %d 입니다.\n", age); 08 return 0; 09 } 표준입력 스트림
【예제 2-5】Ex5.c 02 연속된 사용자 입력 01 #include <stdio.h> 02 int main(void) 03 { 04 int age = 0, birthyear = 0; 05 printf("당신의 나이와 출생년도를 입력하세요\n"); 06 scanf("%d %d", &age, &birthyear); 07 printf("당신은 %d년도에 출생한 %d세 입니다.\n", birthyear, age); 08 return 0; 09 } 표준입력 스트림
형식화된 입 • 출력 02 탈출 기법 문자이름 정수값(ASCII) 프로그램 표현 의미 경고 7 \a 경고음이 울림 수평탭 9 \t 수평으로 탭만큼 이동 개행문자 10 \n 다음 줄로 이동 캐리지 리턴 13 \r 현재 줄의 처음으로 이동 큰따옴표 34 \“ “ 문자 작은따옴표 39 \‘ ‘ 문자 역슬래쉬 92 \\ \ 문자 퍼센트 37 %% % 문자
【예제 2-6】Ex6.c 02 탈출 기법 01 #include <stdio.h> 02 int main(void) 03 { 04 printf("\t\"안녕하세요\"\n\n"); 05 printf("탈출기법을 제대로 사용한 예\n"); 06 printf("\t10 %% 5 = 0\n"); 07 printf("탈출기법을 제대로 사용하지 않은 예\n"); 08 printf("\t10 % 5 = 0\n"); 09 return 0; 10 } 표준입력 스트림
【예제 2-7】Ex7.c 02 다양한 탈출 기법 예제 01 #include <stdio.h> 02 int main(void) 03 { 04 printf("\t\' 프로그램의 시작 \' \n\n"); 05 printf("\t\" C 언어 %c \" \n\n", '!'); 06 printf("\t\"시작이 반이다 %s \"\n", "!!"); 07 printf("\t\a\a\a\a\a\n"); 08 printf("\t\\ \\ \n"); 09 return 0; 10 } 표준입력 스트림
문자 입 • 출력 03 문자 입 • 출력 종 류 의 미 int getchar() 종 류 의 미 int getchar() 키보드로 하나의 문자를 입력받으며 리턴 값은 입력받은 문자에 대한 ASCII 코드 값이다. int putchar (char 문자) 모니터에 하나의 문자를 출력하며 리턴 값은 출력한 문자의 ASCII 코드 값이다.
【예제 2-8】Ex8.c 02 문자입출력 예제 01 #include <stdio.h> 02 int main(void) 03 { 04 char Letter_In; 05 printf("한 개의 문자를 입력하세요.\n"); 06 Letter_In = getchar(); 07 putchar(Letter_In); 08 printf("\n"); 09 return 0; 10 } 표준입력 스트림
문자열 입 • 출력 04 문자열 입 • 출력 종 류 의 미 char *gets(char* str) 종 류 의 미 char *gets(char* str) 키보드에서 한 행을 입력받는다. 리턴 값은 읽은 문자열이다. int puts(char* str) 모니터에 한 행을 출력한다. 리턴 값은 양수이다.
【예제 2-9】Ex9.c 02 문자열 입출력 예제 01 #include <stdio.h> 02 int main(void) 03 { 04 char Name[20]; 05 printf("당신의 이름을 입력하세요 : "); 06 gets(Name); 07 puts(Name); 08 return 0; 09 } 표준입력 스트림