본문 바로가기

C언어/복습

[C언어]DAY4_데이터 타입, if문

기타 데이터 타입 정리

문자
char                    //1byte 양수 음수, 0
unsigned char       //1byte 0, 양수

정수
short int //2byte
unsigned short int  //2byte
long int                //4byte
unsigned long int   //4byt

실수
float                    //4byt
double                //8byt

 


if문

#include int main(){

int a = 1;

int b = 2;

 

//형식 if(조건식) {조건식이 참일 때 실행}

//else{앞의 조건식이 거짓일 때 실행}

 

//관계연산자

if(a>b){

          printf("%d이(가) %d보다 크다\n", a,b);

          }

else{

          printf("%d이(가) %d보다 크다\n", b,a);

          }

 


//논리연산자 사용

//사용자로부터 월(1월~12월)을 입력받아

//유효한 월을 입력한 경우 출력 (1<=3 and 3<=12)

//유효한 월을 입력하지 않은 경우 1~ 12월까지 입력하라고 출력.


#include <stdio.h>

main(){
int month = 3;

printf("월을 입력하세요 >"); 
scanf_s("%d", &month); 

if( 1<=month && month <= 12){ 
	printf("%d월이 입력되었습니다.", month); 
    } 

else{
	printf("잘못 입력하였습니다."); } 
    }
}

 

저번 수업 과제


// 문제 : 반지름을 이용하여 원의 면적과 원둘레를 구해보시오.

// 원의 면적 공식은 반지름 * 반지름 * 3.14

// 원둘레 공식은 반지름 * 2 * 3.14


#include <stdio.h>
#define PI

int main(){

	//1. 변수선언, 초기화
	double radius = 0;
	double area = 0;
	double circum = 0;

	//2. 변수값 입력
	printf("반지름을 입력하세요 > ");
	scanf_s("%lf", &radius ); //double은 %lf, 변수이름앞에 &. \n 넣으면 에러남.

	printf("\n반지름 %.2lf(cm)가 입력되었습니다.\n", radius);

	//3. 면적과 원주율의 길이를 구함.
	area = radius * radius * PI
	circum = radius * 2 * PI

	printf("반지름이 %lf인 원의 면적은 %lf이고 원둘레는 %lf입니다.\n", radius, area, circum) ;


}

// 문제 : 산술연산자

// 두개의 정수를 입력받아 사칙연산하는 프로그램을 작성하시오.

// 단 나누기 결과는 소숫점도 출력하세요.


 


// 문제 : 논리와 관계연산자

// 사용자로부터 정수를 입력받아

// 정수가 1보다 크고 10보다 작으면 1을, 아니면 0을 출력하는 프로그램을 작성하세요.

// True와 False를 define하여 사용하세요.


 


// 문제 : 자동형변환과 강제형변환

// 실수를 입력받아 정수로 출력하는 프로그램을 작성하시오


#include <stdio.h>

int main(){

	//변수 선언
	int num_int = 0;
	double num_double = 0;

	//실수 입력
	printf("실수를 입력하세요 > ");
	scanf_s("%lf", &num_double );
	printf("%.1lf가 입력되었습니다.\n\n", num_double);

	//형변환 (자동형변환 : warning)
	//num_int = num_double;

	//강제형변환
	num_int = (int)num_double;
	//출력
	printf("%d로 변환하였습니다.\n\n", num_int);

}

 

// 문제 : 두 개의 정수를 입력받아 큰 값을 출력하는 프로그램을 작성하시오.

// (삼항연산자를 사용하세요)

 


 


// 문제 : 표준입력과 대입연산자

// 두개의 정수를 입력받아 두 수를 바꾸는 프로그램을 작성하시오.

// swap 스왑이라고 함. a=2, b=4, 결과 : a=4, b=2


#include <stdio.h>

int main(){

	//변수 선언
	int a = 0;
	int b = 0;
	int temp = 0;

	//입력받기
	printf("Swap할 두 정수 a와 b를 입력하세요 > ");
	scanf_s("%d %d", &a, &b);
	printf("a = %d, b = %d 를 입력하셨습니다. \n\n", a, b);

	//a, b 바꾸기
	temp =a;
	a = b;
	b = temp;
	printf("SWAP한 결과 : a = %d, b = %d입니다. \n\n", a, b);

}