IT

기초컴퓨터프로그래밍 C언어(2)-데이터형(정수,실수,int,float등)

배채 2024. 12. 30. 10:35

목차

  1. 변수와 데이터형
  2. 변수의 정의
  3. 데이터형의 종류 (int, float, double, long, long long) 기본 코드 예제
  4. 변수 선언 및 초기화 기본 연산 및 출력 예제 데이터형별 출력 포맷 printf 함수 사용법 각 데이터형의 출력 포맷 (%d, %f, %lf, %ld, %lld) 실습 예제
  5. 직사각형의 넓이와 둘레 계산 원의 면적 계산

오늘은 변수에대해 설명하겠습니다.

음...

A=1이고 B는=2일때 A+B=3

해당 명제는 참이죠? 근데 컴퓨터한테 이따구로 일시키면 에러가 남발합니다.

엥? 왜요? 바로 3이라는 값을 저장할 변수가 없기때문입니다.

자바스크립트나 파이썬은 알잘딱깔센 하던데요? 하시려면 뒤로가기하십시요... (프로그래밍에서 가장 기초적인 언어인 C언어에선 그렇다구요 ^_^)

수학에서 변수는 변하는 수라고해서 미지수정도로 생각하시죠? C언어에서는 그냥 값을 저장하는 통으로 생각하시면됩니다.

컴퓨터는 아주정직하죠. 우리는 A+B값을 원하는데 그냥 문구만 띡하고 띄우다니..

값을 보고싶으면 요래하면 됩니다.

요것이 컴퓨터용 용어에요.

대부분의 프로그래밍 언어문법은 C언어 베이스입니다. 파이썬을 배우고 C를배우긴 어려워요. 근데 C를배우고 다른언어를 습득하기는 비교적 쉽습니다.

자 이제 코드설명을 해드리죠.

main문안에 int A=1, B=2;는 변수 A는 1로 B는 2로 정의하겠다는 말입니다. 컴퓨터입장에서는 A라는 변수와 B라는 변수에 각각 1과 2를 집어넣는다 라고 해석하죠. 인간세계에서 =은 같다 (equal) 라는 의미지만 컴퓨터에서의 =는 집어넣는다 입니다.

똑같은거아니냐구요? 달라요 컴퓨터에서 같다(equal)의 의미는 '=='입니다.

이 논리대로 'A+B는 C와 같아'가 아닌 'A+B값을 C라는 변수에 넣을게' 가 맞습니다,

차이를 보여드리죠

컴퓨터입장에서는 A+B와 C는 같다가 됩니다. 그래서 오류가나죠. 변수 C에는 암것도 없는데 A+B가 같다고? 에러다! 이렇게 된거죠.

이러면 오류가 사라지죠 C라는 변수에 값을 넣었으니까요.

마지막으로 printf("%d",C); 는 변수 C의값을 출력한다라는 의미입니다. C는 정수형인데 정수형을 printf문으로 출력하려면

%d라는 문구가 필요합니다.

정수형 이외에 여러 데이터타입이있는데 기초포스팅이니 오늘은 숫자만다루고 그중 가장 유명한것만 정리해드리겠습니다.

데이터타입

  • int: 정수형 변수
    int age = 25;
    

  • float: 단정도 실수형 변수 (소수점 이하 6자리 정밀도)
    float pi = 3.14;
    

  • double: 배정도 실수형 변수 (소수점 이하 15자리 정밀도)
    double e = 2.718281828;
    

  • long: 큰 정수형 변수 (32비트 또는 64비트 시스템에서 큰 범위의 값)
    long largeNumber = 1234567890L;
    

  • long long: 매우 큰 정수형 변수
    long long veryLargeNumber = 123456789012345LL;

printf 함수의 출력 포맷

  • %d: 정수형 변수 출력
    int age = 25;
    printf("Age: %d\n", age); // 출력: Age: 25
    
  • %f: 단정도 실수형 변수 출력 (float)
    float pi = 3.14;
    printf("Value of pi: %f\n", pi); // 출력: Value of pi: 3.140000
    
  • %lf: 배정도 실수형 변수 출력 (double)
    double e = 2.718281828;
    printf("Value of e: %lf\n", e); // 출력: Value of e: 2.718282
    
  • %ld: long 정수형 변수 출력
    long largeNumber = 1234567890L;
    printf("Large number: %ld\n", largeNumber); // 출력: Large number: 1234567890
    
  • %lld: long long 정수형 변수 출력
    long long veryLargeNumber = 123456789012345LL;
    printf("Very large number: %lld\n", veryLargeNumber); 

int main() {
	int age = 25;
	float pi = 3.14;
	double e = 2.718281828;
	long long veryLargeNumber = 123456789012345LL;

	printf("나이: %d\n", age);
	printf("원주율: %f\n", pi);
	printf("자연상수: %lf\n", e);
	printf("큰숫자: %lld\n,veryLargeNumber");
	return 0;
}

기초적인 예제를 풀어보죠

Ex1)

1. 직사각형의 넓이와 둘레를 구할것이다. 가로값,세록값의 변수를 각각 w,h로 정의하고 넓이와 둘레를 각각 area, permiter로하라.

2. 모든 변수는double형으로 하라

#include<stdio.h>



int main(void) {

	double w, h; //w=가로값, h=세로값



	printf("사각형의 가로 크기를 작성하시오"); //가로값 입력 안내문구

	scanf("%lf", &w); //입력

	printf("사각형의 세로 크기를 작성하시오");//세로값 입력 안내문구

	scanf("%lf", &h); //입력



	double area = w * h; //직사각형의 넓이

	double perimeter = 2 * (w + h); //직사각형의 둘레



	printf("사각형의 넓이는 %lf입니다.\n",area); //넓이 값 출력

	printf("사각형의 둘레는 %lf입니다.\n", perimeter);// 둘레 값 출력



	return 0;

EX2)

원의 면적 계산하기.

*사용자로부터 원의 반지름을 입력받고 이 원의 면적을 구한 다음, 화면에 출력한다.
–조건1. 반지름 radius, 면적 area 는 실수형
–조건2. 면적을 구하는 공식 3.14 * 반지름 * 반지름
#include<stdio.h>

int main(void) {

	double radius;

	printf("원의 반지름을 입력하시오");

	scanf("%lf", &radius);

	double area = 3.14 * radius * radius;

	printf("원의 넓이는 %lf입니다.",area);



	return 0;

}
반응형