Course
Introduction
C++ "Hello, World!" ProgramPrint Number Entered by UserAdd Two NumbersFind Quotient and RemainderFind Size of int, float, double and char in Your SystemSwap Two NumbersFind ASCII Value of a CharacterMultiply two NumbersDecisions and Loops
Check Whether Number is Even or OddCheck Whether a character is Vowel or ConsonantFind Largest Number Among Three NumbersFind All Roots of a Quadratic EquationCalculate Sum of Natural NumbersCheck Leap YearFind FactorialGenerate Multiplication TableDisplay Fibonacci SeriesFind GCDFind LCMReverse a NumberCalculate Power of a NumberCheck Whether a Number is Palindrome or NotCheck Whether a Number is Prime or NotDisplay Prime Numbers Between Two IntervalsCheck Armstrong NumberDisplay Armstrong Number Between Two IntervalsDisplay Factors of a NumberCreate Pyramid and PatternMake a Simple Calculator to Add, Subtract, Multiply or Divide Using switch...caseFunctions
Display Prime Numbers Between Two Intervals Using FunctionsCheck Prime Number By Creating a FunctionCheck Whether a Number can be Express as Sum of Two Prime NumbersFind Sum of Natural Numbers using RecursionCalculate Factorial of a Number Using RecursionFind G.C.D Using RecursionConvert Binary Number to Decimal and vice-versaConvert Octal Number to Decimal and vice-versaConvert Binary Number to Octal and vice-versaReverse a Sentence Using RecursionCalculate Power Using RecursionArrays and Strings
Calculate Average of Numbers Using ArraysFind Largest Element of an ArrayCalculate Standard DeviationAdd Two Matrix Using Multi-dimensional ArraysMultiply Two Matrix Using Multi-dimensional ArraysFind Transpose of a MatrixMultiply two Matrices by Passing Matrix to FunctionAccess Elements of an Array Using PointerSwap Numbers in Cyclic Order Using Call by ReferenceFind the Frequency of Characters in a StringFind the Number of Vowels, Consonants, Digits and White Spaces in a StringRemove all Characters in a String Except AlphabetsFind the Length of a StringConcatenate Two StringsCopy StringsSort Elements in Lexicographical Order (Dictionary Order)C Program to Calculate Difference Between Two Time Periods
To understand this example, you should have the knowledge of the following C programming topics:
Calculate Difference Between Two Time Periods
#include <stdio.h>
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. \n");
printf("Enter hours, minutes and seconds: ");
scanf("%d %d %d", &startTime.hours,
&startTime.minutes,
&startTime.seconds);
printf("Enter the stop time. \n");
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("\nTime Difference: %d:%d:%d - ", startTime.hours,
startTime.minutes,
startTime.seconds);
printf("%d:%d:%d ", stopTime.hours,
stopTime.minutes,
stopTime.seconds);
printf("= %d:%d:%d\n", 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 (start.seconds > stop.seconds) {
--stop.minutes;
stop.seconds += 60;
}
diff->seconds = stop.seconds - start.seconds;
while (start.minutes > stop.minutes) {
--stop.hours;
stop.minutes += 60;
}
diff->minutes = stop.minutes - start.minutes;
diff->hours = stop.hours - start.hours;
if(diff->hours < 0){
diff->hours += 24;
}
}
Output
Enter the start time.
Enter hours, minutes and seconds: 13
34
55
Enter the stop time.
Enter hours, minutes and seconds: 8
12
15
Time Difference: 13:34:55 - 8:12:15 = 18:37:20
In this program, the user is asked to enter two time periods and these two periods are stored in structure variables startTime and stopTime respectively.
Then, the function differenceBetweenTimePeriod()
calculates the difference between the time periods. The result is displayed from the main()
function without returning it (using call by reference technique).