C programm kahe ajavahemiku vahelise erinevuse arvutamiseks

Selles näites õpid arvutama kahe ajaperioodi vahe kasutaja määratud funktsiooni abil.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest C-programmeerimise teemadest:

  • C Kasutaja määratud funktsioonid
  • C struktuur
  • C struktuur ja funktsioon
  • C struktuurid ja osutid

Arvutage kahe ajaperioodi vahe

 #include struct TIME ( int seconds; int minutes; int hours; ); void differenceBetweenTimePeriod(struct TIME t1, struct TIME t2, struct TIME *diff); int main() ( struct TIME startTime, stopTime, diff; printf("Enter the start time. "); printf("Enter hours, minutes and seconds: "); scanf("%d %d %d", &startTime.hours, &startTime.minutes, &startTime.seconds); printf("Enter the stop time. "); printf("Enter hours, minutes and seconds: "); scanf("%d %d %d", &stopTime.hours, &stopTime.minutes, &stopTime.seconds); // Difference between start and stop time differenceBetweenTimePeriod(startTime, stopTime, &diff); printf("Time Difference: %d:%d:%d - ", startTime.hours, startTime.minutes, startTime.seconds); printf("%d:%d:%d ", stopTime.hours, stopTime.minutes, stopTime.seconds); printf("= %d:%d:%d", diff.hours, diff.minutes, diff.seconds); return 0; ) // Computes difference between time periods void differenceBetweenTimePeriod(struct TIME start, struct TIME stop, struct TIME *diff) ( while (stop.seconds> start.seconds) ( --start.minutes; start.seconds += 60; ) diff->seconds = start.seconds - stop.seconds; while (stop.minutes> start.minutes) ( --start.hours; start.minutes += 60; ) diff->minutes = start.minutes - stop.minutes; diff->hours = start.hours - stop.hours; )

Väljund

Sisestage algusaeg. Sisestage tunnid, minutid ja sekundid: 13 34 55 Sisestage peatumisaeg. Sisestage tunnid, minutid ja sekundid: 8 12 15 Aja erinevus: 13:34:55 - 8:12:15 = 5:22:40

Selles programmis palutakse kasutajal sisestada kaks ajaperioodi ja need kaks perioodi salvestatakse vastavalt struktuurimuutujatesse startTime ja stopTime.

Seejärel differenceBetweenTimePeriod()arvutab funktsioon ajavahemike vahe. Tulemus kuvatakse main()funktsioonist tagastamata (kasutades kõnet viitetehnika abil).

Huvitavad Artiklid...