C Programming Seminar 데이터와 입출력 함수
변수와 상수의 관계 변수는 ‘변하는 수’라는 뜻 상수는 ‘항상 같은 수’라는 뜻 즉 상수와 변수는 서로 반대되는 개념이다.
변수와 상수의 관계 상수 상수란 변하지 않고 고정된 값을 의미한다. 이것은 연산에 사용되는 실제의 데이터 또는 값으로 변수의 초기화 및 특정 값의 대입 시 사용된다.
변수와 상수의 관계 정수형 상수 int score; score = 100; // 정수형 상수 소수점 이하 부분이 없는 음수(-), 0, 양수(+)로 구성된다. signed 및 unsigned 수로 구분되며 8진수, 10진수, 16진수가 있다. 정수형 상수의 기억 장치상에 2byte 크기로 표현되며, 정수형 상수 뒤에 L자를 붙이면 4byte의 크기로 된다. int score; score = 100; // 정수형 상수
변수와 상수의 관계 실수형 상수 float pi; pi = 3.14; // 실수형 상수 소수점과 소수 부분을 포함하는 수를 말한다. 실수형 상수는 8byte로 표현되며, 4byte로 표현하고자 할 때는 실수 형 상수 뒤에 f자를 붙인다. Long double 유형의 실수형 상수를 사용하고자 할 때에는 끝에 l이나 L자를 붙인다. float pi; pi = 3.14; // 실수형 상수
변수와 상수의 관계 문자 상수 char ch; ch =‘K’; // 문자 상수 하나의 단일 문자를 의미한다. 문자 상수는 반드시 (‘ ‘)안에 단일 문자로 표기한다. 반드시 하나의 문자만 올 수 있으므로, ‘AB’등과 같이 사용할 수 없 으며 이 경우 컴파일 시 에러가 발생한다. char ch; ch =‘K’; // 문자 상수
변수와 상수의 관계 문자열 상수 printf(“%s”, “C++ Programming”); 두 개 이상의 문자가 모여 있는 것을 문자열이라고 한다. 문자열 상수는 이중인용부호(“ “)를 사용하여 표기한다. C 에서는 문자열 상수를 기본 데이터형으로 제공하지 않는다. - C 언어에서 스트링은 문자 유형의 배열로 처리하고 있다. 문자열 끝에 null string(‘\0’)이 추가되어 그 끝을 알 수 있도록 한다. printf(“%s”, “C++ Programming”); char name[7] =“박남일”; // 문자열 상수
변수와 상수의 관계 그 밖의 문자 상수 문자 의미 \a 삑 소리가 나게 한다. (Alert) \b 커서가 한 문자 뒤로 이동한다. (Backspace) \f 프린터의 페이지 넘김 문자이다. (Formfeed) \n 커서가 다음 행의 처음으로 간다. (NewLine) \r 커서가 현재 행의 처음으로 간다. (Carrage return) \t 커서가 다음의 탭 위치로 이동한다. (Horizontal tab) \v 프린터의 8칸 수직 이동 문자이다. (Vertical tab) \’ 작은따옴표를 나타낸다. (Single quote) \” 큰따옴표를 나타낸다. (Double quote) \\ 역 슬래시를 나타낸다.
변수와 상수의 관계 변수 변수란 프로그램에서 변할 수 있는 값을 말한다. 정확히 말하면 어떤 기억장소가 주어지는데 그 안의 값 을 마음대로 바꿀 수 있는 기억장소를 의미하는 것이다. 변수를 사용하기 위해서는 반드시 변수를 선언해야 한다. 즉, 컴퓨터 내부에서 기억장소를 마련해야 쓸 수 있는 것이다.
변수와 상수의 관계 변수 선언 규칙 int cost; 변수를 선언할 때는 자료형을 표기한 다음 변수 이름을 적는다. 여러 개의 변수를 동시에 선언할 경우에는 쉼표로 각 변수를 구분해 준다. int cost; int cost, price, tax = 90; float sum; float euro, dollar, won; double rate; char ch
변수와 상수의 관계 변수 선언으로 틀린 예 int n // ; 기호를 사용하지 않아 명령의 끝을 알려주지 못함
변수와 상수의 관계 변수의 정의, 초기화, 대입 int numbers; numbers = 3; int numbers;
변수와 상수의 관계 변수의 정의, 초기화, 대입 변수를 초기화해야 하는 이유는, 변수를 선언하고 아무런 값을 대입 하지 않을 경우에는 아무것도 없는 상태가 아니라 알 수 없는 값을 가지게 되는 것이다. 이러한 알 수 없는 값을 쓰레기 값(Garbage)이라고 한다. (-8097214 와 같은 수)
변수와 상수의 관계 int countA = 100; int CountB = 200; int sum; sum = sum + countA; sum = sum + countB;
변수와 상수의 관계 int countA = 100; int CountB = 200; int sum; // sum 변수에 쓰레기값 sum = sum + countA; sum = sum + countB;
변수와 상수의 관계 변수에는 변수의 자료형과 동일한 자료형의 상수를 대입해야 한다. 변수는 이름과 자리만 있을 뿐이며, 변수의 공간에 들어갈 내용 즉, 대입되는 값을 상수이다. 따라서 변수의 자료형에 따라서 대입되 는 상수의 자료형이 달라져야 한다. 정수형 변수에는 정수형 상수만 대입되어야 하고, 실수형 변수에는 실수형 상수를 대입해서 계산해야 한다.
입출력 함수 모니터 출력 함수 putchar() – 문자 상수를 출력할 때 사용한다. - putchar(‘a’); puts() – 문자열을 나타내는 ‘문자열 전용 출력함수’ 이다. - puts(“안녕하세요”); printf() – 큰따옴표 안의 문장을 화면으로 표시한다. - printf(“정수 : %d \n”, 100);
입출력 함수 printf 실습 #include <stdio.h> void main() { int Age = 20; printf(“제 나이는 20살입니다.\n”); printf(“제 나이는 %d살입니다.\n”, Age); printf(“제 나이는 %d이고, 동생의 나이는 %d살 입니다.\n”, Age, Age-5); }
입출력 함수 printf 실습 #include <stdio.h> void main() { int Age = 20; printf(“제 나이는 20살입니다.\n”); printf(“제 나이는 %d살입니다.\n”, Age); printf(“제 나이는 %d이고, 동생의 나이는 %d살 입니다.\n”, Age, Age-5); }
입출력 함수 모니터 출력함수 getchar() – 문자 한 글자를 키보드로부터 입력받을 때 사용 - Character1 = getchar(); gets() – 문자열을 입력받기 위한 함수로 한 줄 전체를 입력받는다. - gets(name); scanf() – 사용자로부터 자료를 입력받게 해주는 함수이다. - scanf(“%d”, &number);
입출력 함수 scanf 실습 #include <stdio.h> void main() { int Number1, Number2; printf(“숫자를 두 개 입력하세요(보기 : 3 5) : “); scanf(“%d %d”, &Number1, &Number2); printf(“입력한 수는 %d와 %d입니다.\n”, Number1, Number2); }
입출력 함수 scanf 실습 #include <stdio.h> void main() { int Number1, Number2; printf(“숫자를 두 개 입력하세요(보기 : 3 5) : “); scanf(“%d %d”, &Number1, &Number2); printf(“입력한 수는 %d와 %d입니다.\n”, Number1, Number2); }
입출력 함수 대체문자 % 기호 형식 지정자 의미 %c 매개변수를 문자 상수(글자)로 출력 %d 매개변수를 10진수 형태의 정수로 출력 %ld 매개변수를 10진수 형태의 long형 정수로 출력 %lu 매개변수를 부호 없는 10진수 형태의 long형으로 출력 %f 매개변수를 float나 double의 실수로 출력 %s 매개변수를 문자열(문장) 형태로 출력 %o 매개변수를 8진수 형태의 정수로 출력 %u 매개변수를 부호 없는 10진수 형태의 정수로 출력 %x 매개변수를 16진수 형태의 정수로 출력
입출력 함수 %기호 실습 #include <stdio.h> void main() { printf(“1. 이것은 영문 %c \n”, ‘b’); printf(“2. 이것은 정수 %d \n”, 99); printf(“3. 이것은 실수 %f \n”, 12.34); printf(“4. 이것은 문장 %s \n”, “홍길동입니다.”); }
입출력 함수 %기호 실습 #include <stdio.h> void main() { printf(“1. 이것은 영문 %c \n”, ‘b’); printf(“2. 이것은 정수 %d \n”, 99); printf(“3. 이것은 실수 %f \n”, 12.34); printf(“4. 이것은 문장 %s \n”, “홍길동입니다.”); }
입출력 함수 %기호 실습 #include <stdio.h> void main() { printf(“1. 이것은 영문 %c \n”, ‘b’); printf(“2. 이것은 정수 %d \n”, 99); printf(“3. 이것은 실수 %f \n”, 12.34); printf(“4. 이것은 문장 %s \n”, “홍길동입니다.”); }
실전 예제 총점/평균의 계산
실전 예제 총점/평균의 계산 총점과 평균의 계산 total = score1 + score2 + score3 + score4 + score5; average = (float)total/5; 소수점 둘째자리까지만 표기하는 법 Printf(“%.2f”, average);