본문 바로가기

C언어/예습

[C언어 예습] DAY3_형변환, 입력함수

형변환

(형변환의 경우 정수는 소수점 자리를 올림하지 않고 다 버린다.)

 

  자동형변환
     실수와 정수의 연산

        (실수는 진수부 가수부 따로 저장하기 때문에 정수보다 더 커서?)

     정수타입에 실수값
     실수타입에 정수값

 

  강제형변환
     (바꿀타입)값
     값이 바꿀 타입으로 바뀐다.

 

아스키 코드 (컴퓨터에서 문자를 숫자로 가지고 있다.) => 암호화

 


 

#include

void main() {
//자동 형변환
int data = 3.8;
double data2 = 5;
printf("==자동 형변환==\n");
printf("%d\n", data);
printf("%.1lf\n", data2);
printf("===============\n");
printf("%d\n", 11 / 9);
printf("%.3lf\n", 11.0/9);

//강제형변환
printf("==강제 형변환==\n");
printf("%.1lf\n", (double)3 / 2);
printf("%.2lf\n", (int)8.43 + 2.59);
printf("%d\n", (int)(8.43 + 2.59));
printf("%d\n", (int)8.43 + (int)2.59);

}

 



입력 함수

 

입력상태 : 커서가 깜짝이는 상태

 

입력받기 전 사용자에게 입력할 것에 대해 알려줘야 함.

 

scanf_s("입력받을 값의 서식문자",&변수명);

&(엔퍼센드, 번지 연산자, 주소 연산자) : 저장공간의 주소값을 알려주고 싶을 때.

* 2015이후에는 _s(size)를 붙여야 사용가능. 이전의 버전은 scanf 도 사용가능하다.

 

%(모듈러스) 10%3 : 1 => 몫을 나타냄.

 


#include <stdio.h>

void main() {

	int data1 = 0;
	int data2 = 0;
	int result = 0;

	printf("첫번째 정수를 입력하세요\n");
	scanf_s("%d", &data1);
	//printf("%d\n", data1)
	printf("두번째 정수를 입력하세요\n");
	scanf_s("%d", &data2);
	result = data1 + data2;
	printf("두 수의 합 : %d\n", result);

}

 


 

#include <stdio.h>
//정수 2개를 입력받아서, 몫과 나머지 출력하기
//%(모듈러스) 10%3 : 1 => 몫
//10,3 입력시 3.33도 출력하기
void main() {

	int data1 = 0;
	int data2 = 0;
	int value = 0;
	int theRest = 0;
	double result = 0.0;

	printf("첫번째 정수를 입력하세요\n");
	scanf_s("%d", &data1);
	//printf("%d\n", data1)
	printf("두번째 정수를 입력하세요\n");
	scanf_s("%d", &data2);

	value = data1 / data2;
	theRest = data1 % data2;
	result = (double)data1 / data2;
	printf("몫 : %d\n나머지 : %d\n결과값 :%.2lf\n", value,theRest,result);

}

 




 Alt + 영어(밑 줄이 있는 영어) : 실행

-----------------------