본문 바로가기

문제로 함께하는 C언어

문제2. 정수 3개 더하기

문제:

사용자로부터 세 개의 정수를 입력받은 후, 평균값을 계산하여 화면에 출력하는 프로그램을 작성하시오.

평균은 정수형으로 표시하지 말고, 실수형으로 출력하시오.

 

화면:

 

해결 방안:

scanf로 세 정수를 입력받는다. int형 변수 sum에 이 정수들을 더하고, 3.0으로 나눈 것을 출력한다.

이때 유의 해야할 것은, 소수자리가 발생할 수 있으므로, sum을 float형으로 강제형변환하여 3.0으로 나눈 결과를 출력한다.

 

또는 sum 자체를 float형으로 선언하여 강제형변환을 피할 수 있다.

 

소스:

 

#include <stdio.h>

int main(void){
 int input, sum = 0;

 printf("Please give an integer: ");
 scanf(" %d", &input);
 sum += input;

 printf("Please give an integer: ");
 scanf(" %d", &input);
 sum += input;

 printf("Please give an integer: ");
 scanf(" %d", &input);
 sum += input;

 printf("The average is: %f\n", (float) sum / 3.0);
 return 0;
}