입출력 함수와 연산자 - 1
함수의 기본 개념, 표준 입출력 함수의 종류와 사용법.
입출력 양식 변환 기호.
-
학습 목표
- C 언어에서의 함수를 이해.
- 표준 입출력 함수의 사용.
- 입출력 양식 변환 기호 사용..
-
주요 용어
- 함수 : 특정한 작업(기능)을 수행하도록 설계된 독립적인 프로그램.
- 표준 함수 : C 언어 자체적으로 제공하는 함수.
- 사용자 정의 함수 : 사용자가 정의하여 사용하는 함수.
- 표준 입출력함수 : 자료의 입출력을 위해 C 언어에서 제공하는 함수.
표준 입출력 함수
함수 : 특정한 작업(기능)을 수행하도록 설계된 독립적인 프로그램.
C언어에서의 함수
- 표준 함수 : C 언어 자체에서 제공하는 함수.
- 사용자 정의 함수 : 사용자가 정의하여 사용하는 함수.
표준 입출력 함수의 종류
표준 출력함수 | 기능 |
---|---|
printf() | 화면에 여러 종류의 자료를 출력 |
putchar() | 화면에 1개의 문자를 출력 |
puts() | 화면에 문자열 출력 |
표준 입력함수 | 기능 |
---|---|
scanf() | 키보드를 통해 여러 종류의 자료를 입력 받음 |
getchar() | '' 1개의 문자를 입력 |
gets() | '' 문자열 출력 |
표준 출력 함수
출력양식 변환 기호
%문자 | 변환 형식 | 인자의 자료형 |
---|---|---|
%d | 부호 있는 10진 정수 | 정수형, 문자형 |
%u | 부호 없는 10진 정수 | 정수형, 문자형 |
%f | 부동소수점형식 | 실수형 |
%e, %E | 지수 형태 | 실수형 |
%c | 한 문자 | 정수형, 문자형 |
%s | 문자열 | 문자열 포인터 |
%o | 부호 없는 8진수 | 정수형, 문자형 |
%x, %X | 부호 없는 16진수 | 정수형, 문자형 |
#include <stdio.h>
int main()
{
// 양식 변환 기호의 사용 예
printf("%c\n", 'a'); // a
printf("%d\n", -123); // -123
printf("%o\n", 123); // 173
printf("%x\n", 123); // 7b
printf("%X\n", 123); // 7B
printf("%f\n", 123.456789); // 123.456789
printf("%e\n", 123.456789); // 1.234568e+02
printf("%s\n", "asdf"); // asdf
printf("|%d|\n", 123); // |123| -> 숫자의 길이만큼 출력 폭이 자동 지정 됨.
printf("|%5d|\n", 123); // | 123| -> 총 5자리 오른쪽 정렬.
printf("|%-5d|\n", 123); // |123 | -> 총 5자리 왼쪽 정렬.
printf("|%05d|\n", 123); // |00123| -> 총 5자리 공백은 0 오른쪽 정렬.
printf("|%6.1f|\n", 123.45); // | 123.5| -> 소숫점 포함 총 6자리, 소수점 이하 1자리 출력
printf("|%07.2f|\n", 123.45); // |0123.45| -> 소숫첨 포함 총 7자리, 소수점 이하 2자리 출력, 공백은 0
return 0;
}
printf()
- 형식 : printf("출력 양식", 변수1, 변수2, ..);
- 기능 : 주어 진 출력양식으로 자료를 출력한다.
- 사용 예
- printf("This is an example\n");
- printf("A=%d, B=%c\n", a, b);
#include <stdio.h>
int main()
{
char c = 'A';
int i = 10, j = 20, k = 30;
printf("simple print program\n");
printf("c = %c, c\'s ASCII CODE : %d\n", c, c);
printf("i = %d, j = %d, k = %d\n", i, j, k);
return 0;
}
putchar()
- 형식 : putchar();
- 기능 : 한 문자를 출력.
- 사용 예
- putchar('A');
#include <stdio.h>
int main()
{
char c = 'C';
putchar(c);
putchar(c + 1); // 수식이 사용 됨.
putchar('\n'); // 개항.
putchar('E'); // 문자형 상수.
putchar('E' + 2); // 수식 실행.
putchar('\007');
return 0;
}
puts()
- 형식 : puts(변수);
- 기능 : 문자열을 입력 받음.
- 사용 예
- char s[50] = "Jeaha";
- puts(s);
#include <stdio.h>
int main()
{
char s1[] = "Jeaha In ";
char s2[] = "The C Hell.";
puts(s1);
puts(s2); // \n을 사용하지 않아도 자동으로 줄바꿈이 됨.
printf("%s", s1);
printf("%s\n", s2); // \n을 사용하지 않아서 문자열이 연결되어 출력 됨.
return 0;
}
표준 입력 함수
입력 양식 변환 기호
%문자 | 변환 기능 |
---|---|
%d | 정수 |
%ld | long |
%f | 실수형 |
%lf | double 실수형 |
%c | 문자형 |
%s | 문자열 |
scanf()
- 형식 : scanf("입력 양식", &변수1, &변수2, ..);
- 기능 : 주어진 양식으로 자료를 입력받아 지정된 변수에 저장.
- 사용 예
- scanf("%d", &d);
#include <stdio.h>
// 권장하지 않은 함수에 대한 경고 무시 요청.
#pragma warning(disable : 4996)
int main()
{
int i1, i2;
float j1, j2;
printf("\n>>> insert integer : ");
scanf("%d %d", &i1, &i2);
printf("\n>>> insert float or double : ");
scanf("%f %f", &j1, &j2);
printf("\n--------------------------------\n");
printf("\nint\n\t1 : %d\n\t2 : %d\n", i1, i2);
printf("\nfloat\n\t1 : %f\n\t2 : %f\n", j1, j2);
return 0;
}
getchar()
- 형식 : getchar();
- 기능 : 한 문자를 입력받아 지정된 변수에 저장.
- 사용 예
- a=getchar();
#include <stdio.h>
int main()
{
char a;
printf("\ninsert one char : ");
a = getchar();
printf("a = %c\n", a);
return 0;
}
gets()
- 형식 : gets();
- 기능 : 문자열을 입력 받음.
- 사용 예
- char s[50];
- gets(s);
#include <stdio.h>
#pragma warning(disable : 4996)
int main()
{
char s[50];
printf("\ninsert string : ");
gets(s);
printf("string inserted by gets() : %s\n", s);
printf("\ninsert string : ");
scanf("%s", s); // 공백 문자로 문자를 구분하기 때문에, 공백이 생기면 n개의 문자열로 인식함.
printf("string inserted by scanf() : %s\n", s);
return 0;
}
728x90
반응형
'Language > C' 카테고리의 다른 글
[C] 함수와 기억 클래스 - 1 (0) | 2020.12.20 |
---|---|
[C] 선택 제어문과 반복 제어문 (0) | 2020.12.20 |
[C] 입출력 함수와 연산자 - 2 (0) | 2020.12.20 |
[C] 자료형과 선행 처리기 (0) | 2020.12.14 |
[C] C 언어의 개요 (0) | 2020.12.13 |