[3.1f] 상수
프로그램 안에서 값을 저장하는 기억공간을 변수하고 한다.
지금까지 변수를 사용하여 데이터를 저장하였다.
이 단원에서는 프로그램 안에서 데이터의 값이 변하지 않고
고정적인 값을 유지하는 상수(constant)를 어떻게 사용하는지 알아보자.
예문 (
03-arith-01f-상수.cpp );
#include <stdio.h>
#include <conio.h>
main() {
const float pi=3.14159; /* 실수형 상수의 선언 */
const int N=15; /* 정수형 상수의 선언 */
float A;
A = pi * N * N;
printf(" 상수의 선언; pi=%.5f, N=%d, A=%.5f",pi,N,A); getch();
}
출력; pi=3.14159, N=15, A=706.85778
▶ 필요성; 계산하는 과정에서 변하지 않는 값 (또는 변하면 안되는 값)이 있다.
예를 들면, 원주율을 pi=3.14159와 같이
항상 일정한 값을 프로그램에서 사용한다.
또 다른 예를 들면, 은행에서 이자 계산을 할 때
모든 고객에 대해서 이자율을 고정하여 계산하는 것을 생각할 수 있다.
▶ 어떻게 상수를 선언하는가?
변수의 선언과 비슷하다.
다만 const라는 키워드를 자료형 앞에 둔다.
예; const float pi=3.14159;
▶ 일단 상수로 정의되면 프로그램 안에서 값을 변경하려는 시도는 오류이다.
예; const float pi=3.14159;
pi = 3.14; 프로그램 안에서 상수값를 변경하려고 하면 오류이다.
▶ 상수로 정의할 때 반드시 합당한 상수값을 부여해야 한다.
그렇지 않으면 원하지않은 값이 들어가게 된다.
예; const float pi; 상수값을 할당하지 않았기때문에 오류이다.
[예제] 아래 코드에서 radius=10일 때 출력을 예측하시오.
#include <stdio.h>
#include <conio.h>
main() {
const float pi=3.14159; /* 실수형 상수의 선언 */
float radius, area;
printf("\n 반지름(radius)를 입력하시오 >> "); scanf("%f",&radius);
area = pi * radius * radius;
printf("\n 면적; area=%.3f",area); getch();
}
[실습문제] 반지름을 pi=3.14159 상수로 선언하고,
원둘레의 길이(2*pi*반지름)를 계산하는 코드를 작성하시오.
반지름= 10 ⇒ 원둘레는 62.832이다.
반지름= 32.583 ⇒ 원둘레= ?
//