본문 바로가기

정보올림피아드

[출력] 유형2. printf(“ “) 화면 출력 시, “, %, ‘과 같은 문자 표시하기

[문제]

(C언어)

double, float 값을 하나씩 입력 받아, +, /, % 값을 출력해 주세요.(결과:소수 1자리까지, %연산자는 정수 형으로 값을 바꾸어 연산하기)

(소스 코드는 문제를 푼 이후에 나중에 확인)



[출력 화면]




 

[소스 코드]


 

int main()

{

        float a;

        double b;

        printf("\"double, float 입력\" :"); // “ “ 문자 화면 출력하기 (1)

        scanf("%f %lf", &a, &b);   // 키보드로부터 입력(2)

       

        printf("a + b = %.1f \n", a+b);

        printf("a / b = %.1f \n", a/b);

        printf("a %% b = %d \n", (int)a%(int)b); // 자료형 정수 형으로 연산(3)

        return 0;

}


   [설 명]

(1)  “ “ 문자 화면 출력하기

콘솔 화면에 “, %, ‘ 등과 같은 문자를 출력해야 할 경우는 해당 문자 앞에 \’ (‘\’)(역슬래스)를 붙여준다


(2)  키보드로부터 값 입력

float double 변수를 출력할 때는 printf에서는 동일하게 %f를 사용한다.

, scanf에서는 이를 구분한다 float의 경우는 %f, double의 경우는 %lf를 사용한다.


(3)  자료형 정수형으로 바꾸기

%의 연산자의 경우는 정수 % 정수 형태로 연산이 가능하다

따라서 a, b를 정수형태로 변경해 주어야 한다. 어떤 자료형의 형태를 변경할 때는 

다음과 같이 변경이 가능하다.

 

(자료형) 변수

(int) a;        // a int(정수)형태로 바꾸기

(float) b;     // bfloat(실수)형태로 바꾸기

(double) c;   // c double(실수)형태로 바꾸기