반응형
1년(365.2422일)을 일, 시, 분, 초로 표현하기
#include<stdio.h>
int main(){
double tmp = 365.2422;
int day = 0, hour = 0, min = 0, sec = 0;
printf("1년은 %.4lf일 이다.\n", tmp);
day = (int)tmp; // double형의 tmp를 int형 day에 대입하면 데이터 손상이 발생한다.
// 따라서 casting 하여 (int)tmp = 365를 대입한다.
tmp -= day; // day는 365일, tmp에 나머지 값인 0.2422일을 대입해준다.
hour = tmp * 24; // 1일은 24시간 이므로 tmp(0.2422일)에 '24(시간)/1(일)' 을 곱하여준다.
tmp = (tmp * 24) - hour;
min = tmp * 60;
tmp = (tmp * 60) - min;
sec = tmp * 60;
printf("%d일 %d시 %d분 %d초\n", day, hour, min, sec);
return 0;
}
반응형
'C' 카테고리의 다른 글
[C언어] 실습: 출장비를 입력받은 후, 화폐 매수(오만 원, 만 원, 오천 원, 천 원, 오백 원, 오십 원, 십 원) 계산하여 출력하기 - 1 (0) | 2020.12.15 |
---|---|
[C언어] 실습: 반지름을 입력받아 원의 면적과 둘레 출력하기 (0) | 2020.12.14 |
[C언어] 형 변환(Casting) (0) | 2020.12.12 |
[C언어] 실습: 세 개의 숫자를 입력받은 후, 큰 수와 작은 수 출력하기 (조건 연산자) (0) | 2020.12.11 |
[C언어] 실습: 세 개의 숫자를 입력받은 후, 큰 수 출력하기 (조건 연산자) (0) | 2020.12.10 |