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