프로그래밍 언어/C언어

C언어 초(second)를 입력 받아 시간, 분, 초 단위로 나눠서 출력하는 함수를 구현해 프로그램을 작성하시오.

컨설턴트X 2023. 5. 10. 12:57
728x90
반응형

초(second)를 입력 받아 시간, 분, 초 단위로 나눠서 출력하는 함수를 구현해 프로그램을 작성하시오.

 

 

#include <stdio.h>

void convert_time(int seconds) {
    int hours, minutes;
    hours = seconds / 3600;     // 입력된 초를 3600으로 나누어 시간 단위로 계산
    seconds = seconds % 3600;   // 시간 단위로 계산한 나머지 값을 초로 재할당
    minutes = seconds / 60;     // 남은 초를 60으로 나누어 분 단위로 계산
    seconds = seconds % 60;     // 분 단위로 계산한 나머지 값을 초로 재할당
    
    printf("\n%02d시간 %02d분 %02d초 입니다.\n",hours, minutes, seconds);    // 시간, 분, 초 값을 2자리수로 표현하여 출력
}

int main() {
    int sec;
    scanf("%d", &sec);          // 사용자로부터 초 입력 받음
    printf("%d초는", sec);
    convert_time(sec);          // convert_time() 함수에 초 값을 전달하여 시간, 분, 초 단위로 출력

    return 0;
}


위의 코드는 입력받은 초를 시간, 분, 초 단위로 변환하여 출력하는 프로그램입니다. 

`convert_time()` 함수에서는 입력받은 초를 3600으로 나누어 시간 단위로 계산하고, 남은 초를 다시 60으로 나누어 분 단위로 계산합니다. 그리고 남은 초 값을 초 단위로 할당하여 출력에 사용됩니다.

`main()` 함수에서는 사용자로부터 초를 입력받아 `convert_time()` 함수를 호출하여 시간, 분, 초 단위로 변환한 값을 출력합니다. `printf()` 함수의 `%02d` 포맷 스트링을 사용하여 시간, 분, 초 값을 2자리수로 표현합니다.

728x90
반응형