Реализовать таймер в секундах - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Нужен таймер в секундах на языке си. Секунды указывает сам пользователь (код с комментариями)

Решение задачи: «Реализовать таймер в секундах»

textual
Листинг программы
#include <stdio.h>
#include <time.h>
#include <windows.h>
 
int main()
{
    int sec;
    printf("enter sec: "); //количество секунд
    scanf("%d",&sec);
    time_t start, end;
    double elapsed;
    time(&start);  //стартуем таймер
    do
    {
        time(&end);
        elapsed = difftime(end, start); // пройденный промежуток времени
        system("cls"); // очистка консоли (Windows OS)
        printf("Time elapsed: %0.lf sec\n", elapsed); //выводим секунды на консоль
    }
    while(elapsed < sec); // граница цикла (введенное количество секунд)
    return 0;
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек: , ,
  2. Объявление переменной типа int для хранения количества секунд: int sec;
  3. Вывод сообщения с просьбой ввести количество секунд и их прием с помощью функции scanf: printf(enter sec:); scanf(%d,&sec);
  4. Объявление переменных типа time_t для хранения начального и конечного времени: time_t start, end;
  5. Установка начального времени с помощью функции time(): time(&start);
  6. Запуск бесконечного цикла do-while, в котором:
    1. Внутри цикла вызывается функция time() для получения текущего времени и сохраняется в переменной end.
    2. Вычисляется пройденный промежуток времени с помощью функции difftime(end, start) и сохраняется в переменной elapsed.
    3. С помощью функции system(cls) очищается консоль (актуально для Windows OS).
    4. Выводится на консоль сообщение о прошедшем времени: printf(Time elapsed: %0.lf sec\n, elapsed);
  7. Цикл продолжается, пока пройденный промежуток времени меньше заданного количества секунд.
  8. В конце программы возвращается 0, что означает успешное выполнение.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.583 из 5
Похожие ответы