The reason being is that it says that my program is right
Code:
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#define NFlights 10
struct date
{
int month;
int day;
int year;
int hour;
int minute;
int meridian;
};
struct flight
{
long int flight_number;
char* airline;
char* departure_city;
char* arrival_city;
struct date departure_time;
struct date arrival_time;
}my_flight[NFlights];
int lessThan(struct flight F1 , struct flight F2) {
struct date A = F1.departure_time;
struct date B = F2.departure_time;
struct date C = F1.departure_time;
struct date D = F2.departure_time;
if (A.year < B.year) return 1;
else if (A.year == B.year && A.month < B.month) return 1;
else if (A.year == B.year && A.month == B.month && A.day < B.day) return 1;
else if (A.year == B.year && A.month == B.month && A.day == B.day && C.meridian < D.meridian) return 1;
else if (A.year == B.year && A.month == B.month && A.day == B.day && C.meridian == D.meridian && C.hour < D.hour) return 1;
else if (A.year == B.year && A.month == B.month && A.day == B.day && C.meridian == D.meridian && C.hour == D.hour && C.minute < D.minute) return 1;
else return 0;
}
int sort(struct flight *my_flight)
{
int i, j;
struct flight x;
for (i = 0; i < 5; i++){
for (j = 0; j < 5; j++){
if (lessThan(my_flight[i], my_flight[j])){
x = my_flight[j];
my_flight[j] = my_flight[i];
my_flight[i] = x;
}
}
}
return 0;
}
int main()
{
struct flight my_flight[NFlights];
int i;
my_flight[ 0 ].flight_number = 100;
my_flight[ 0 ].airline= "American";
my_flight[ 0 ].arrival_city = "Boston";
my_flight[ 0 ].departure_city = "Seattle";
my_flight[ 0 ].departure_time.month = 05;
my_flight[ 0 ].departure_time.day = 12;
my_flight[ 0 ].departure_time.year=2014;
my_flight[ 0 ].departure_time.hour=10;
my_flight[ 0 ].departure_time.minute=30;
my_flight[ 0 ].departure_time.meridian= 0;
my_flight[ 0 ].arrival_time.month = 05;
my_flight[ 0 ].arrival_time.day = 12;
my_flight[ 0 ].arrival_time.year=2014;
my_flight[ 0 ].arrival_time.hour=12;
my_flight[ 0 ].arrival_time.minute=30;
my_flight[ 0 ].arrival_time.meridian= 1;
my_flight[ 1 ].flight_number = 200;
my_flight[ 1 ].airline= "United";
my_flight[ 1 ].arrival_city = "El Paso";
my_flight[ 1 ].departure_city = "Chicago";
my_flight[ 1 ].departure_time.month = 06;
my_flight[ 1 ].departure_time.day = 13;
my_flight[ 1 ].departure_time.year=2014;
my_flight[ 1 ].departure_time.hour=6;
my_flight[ 1 ].departure_time.minute=30;
my_flight[ 1 ].departure_time.meridian= 0;
my_flight[ 1 ].arrival_time.month = 06;
my_flight[ 1 ].arrival_time.day = 13;
my_flight[ 1 ].arrival_time.year=2014;
my_flight[ 1 ].arrival_time.hour=8;
my_flight[ 1 ].arrival_time.minute=30;
my_flight[ 1 ].arrival_time.meridian= 0;
my_flight[ 2 ].flight_number = 300;
my_flight[ 2 ].airline= "Emirates";
my_flight[ 2 ].arrival_city = "Barcelona";
my_flight[ 2 ].departure_city = "Madrid";
my_flight[ 2 ].departure_time.month = 01;
my_flight[ 2 ].departure_time.day = 01;
my_flight[ 2 ].departure_time.year=2014;
my_flight[ 2 ].departure_time.hour=10;
my_flight[ 2 ].departure_time.minute=30;
my_flight[ 2 ].departure_time.meridian= 0;
my_flight[ 2 ].arrival_time.month = 01;
my_flight[ 2 ].arrival_time.day = 01;
my_flight[ 2 ].arrival_time.year=2014;
my_flight[ 2 ].arrival_time.hour=12;
my_flight[ 2 ].arrival_time.minute=30;
my_flight[ 2 ].arrival_time.meridian= 1;
my_flight[ 3 ].flight_number = 400;
my_flight[ 3 ].airline= "Southwest";
my_flight[ 3 ].arrival_city = "Los Angeles";
my_flight[ 3 ].departure_city = "Sacramento";
my_flight[ 3 ].departure_time.month = 10;
my_flight[ 3 ].departure_time.day = 21;
my_flight[ 3 ].departure_time.year=2014;
my_flight[ 3 ].departure_time.hour= 9;
my_flight[ 3 ].departure_time.minute=30;
my_flight[ 3 ].departure_time.meridian= 0;
my_flight[ 3 ].arrival_time.month = 10;
my_flight[ 3 ].arrival_time.day = 21;
my_flight[ 3 ].arrival_time.year=2014;
my_flight[ 3 ].arrival_time.hour=11;
my_flight[ 3 ].arrival_time.minute=30;
my_flight[ 3 ].arrival_time.meridian= 0;
my_flight[ 4 ].flight_number = 500;
my_flight[ 4 ].airline= "Emirates";
my_flight[ 4 ].arrival_city = "London";
my_flight[ 4 ].departure_city = "Paris";
my_flight[ 4 ].departure_time.month = 02;
my_flight[ 4 ].departure_time.day = 13;
my_flight[ 4 ].departure_time.year=2014;
my_flight[ 4 ].departure_time.hour=10;
my_flight[ 4 ].departure_time.minute=30;
my_flight[ 4 ].departure_time.meridian= 0;
my_flight[ 4 ].arrival_time.month = 02;
my_flight[ 4 ].arrival_time.day = 13;
my_flight[ 4 ].arrival_time.year=2014;
my_flight[ 4 ].arrival_time.hour=5;
my_flight[ 4 ].arrival_time.minute=30;
my_flight[ 4 ].arrival_time.meridian= 1;
my_flight[ 5 ].flight_number = 600;
my_flight[ 5 ].airline= "American";
my_flight[ 5 ].arrival_city = "Chicago";
my_flight[ 5 ].departure_city = "Los Angeles";
my_flight[ 5 ].departure_time.month = 03;
my_flight[ 5 ].departure_time.day = 12;
my_flight[ 5 ].departure_time.year=2014;
my_flight[ 5 ].departure_time.hour=8;
my_flight[ 5 ].departure_time.minute=30;
my_flight[ 5 ].departure_time.meridian= 0;
my_flight[ 5 ].arrival_time.month = 03;
my_flight[ 5 ].arrival_time.day = 12;
my_flight[ 5 ].arrival_time.year=2014;
my_flight[ 5 ].arrival_time.hour=01;
my_flight[ 5 ].arrival_time.minute=30;
my_flight[ 5 ].arrival_time.meridian= 1;
my_flight[ 6 ].flight_number = 700;
my_flight[ 6 ].airline= "United";
my_flight[ 6 ].arrival_city = "Albuquerque";
my_flight[ 6 ].departure_city = "Oakland";
my_flight[ 6 ].departure_time.month = 9;
my_flight[ 6 ].departure_time.day = 20;
my_flight[ 6 ].departure_time.year=2014;
my_flight[ 6 ].departure_time.hour=03;
my_flight[ 6 ].departure_time.minute=00;
my_flight[ 6 ].departure_time.meridian= 1;
my_flight[ 6 ].arrival_time.month = 9;
my_flight[ 6 ].arrival_time.day = 20;
my_flight[ 6 ].arrival_time.year=2014;
my_flight[ 6 ].arrival_time.hour=07;
my_flight[ 6 ].arrival_time.minute=30;
my_flight[ 6 ].arrival_time.meridian= 1;
my_flight[ 7 ].flight_number = 800;
my_flight[ 7 ].airline= "American";
my_flight[ 7 ].arrival_city = "Houston";
my_flight[ 7 ].departure_city = "Austin";
my_flight[ 7 ].departure_time.month = 04;
my_flight[ 7 ].departure_time.day = 28;
my_flight[ 7 ].departure_time.year=2015;
my_flight[ 7 ].departure_time.hour=01;
my_flight[ 7 ].departure_time.minute=00;
my_flight[ 7 ].departure_time.meridian= 1;
my_flight[ 7 ].arrival_time.month = 04;
my_flight[ 7 ].arrival_time.day = 28;
my_flight[ 7 ].arrival_time.year=2015;
my_flight[ 7 ].arrival_time.hour=02;
my_flight[ 7 ].arrival_time.minute=30;
my_flight[ 7 ].arrival_time.meridian= 1;
my_flight[ 8 ].flight_number = 900;
my_flight[ 8 ].airline= "Southwest";
my_flight[ 8 ].arrival_city = "El Paso";
my_flight[ 8 ].departure_city = "Chicago";
my_flight[ 8 ].departure_time.month = 9;
my_flight[ 8 ].departure_time.day = 28;
my_flight[ 8 ].departure_time.year=2014;
my_flight[ 8 ].departure_time.hour=06;
my_flight[ 8 ].departure_time.minute=30;
my_flight[ 8 ].departure_time.meridian= 0;
my_flight[ 8 ].arrival_time.month = 9;
my_flight[ 8 ].arrival_time.day = 28;
my_flight[ 8 ].arrival_time.year=2014;
my_flight[ 8 ].arrival_time.hour=9;
my_flight[ 8 ].arrival_time.minute=30;
my_flight[ 8 ].arrival_time.meridian= 0;
my_flight[ 9 ].flight_number = 1000;
my_flight[ 9 ].airline= "American";
my_flight[ 9 ].arrival_city = "Guadalajara";
my_flight[ 9 ].departure_city = "Cancun";
my_flight[ 9 ].departure_time.month = 12;
my_flight[ 9 ].departure_time.day = 22;
my_flight[ 9 ].departure_time.year=2015;
my_flight[ 9 ].departure_time.hour=10;
my_flight[ 9 ].departure_time.minute=30;
my_flight[ 9 ].departure_time.meridian= 0;
my_flight[ 9 ].arrival_time.month = 12;
my_flight[ 9 ].arrival_time.day = 22;
my_flight[ 9 ].arrival_time.year=2015;
my_flight[ 9 ].arrival_time.hour=02;
my_flight[ 9 ].arrival_time.minute=30;
my_flight[ 9 ].arrival_time.meridian= 1;
printf("These are the flights before ordering:\n");
for( i = 0; i < NFlights; i++ )
{
printf( "Flight[%d]: %ld %s %s %s %d %d %d %d %d %d %d %d %d %d %d %d \n",i,
my_flight[ i ].flight_number,
my_flight[ i ].airline,
my_flight[ i ].arrival_city,
my_flight[ i ].departure_city,
my_flight[ i ].departure_time.month,
my_flight[ i ].departure_time.day,
my_flight[ i ].departure_time.year,
my_flight[ i ].departure_time.hour,
my_flight[ i ].departure_time.minute,
my_flight[ i ].departure_time.meridian,
my_flight[ i ].arrival_time.month,
my_flight[ i ].arrival_time.day,
my_flight[ i ].arrival_time.year,
my_flight[ i ].arrival_time.hour,
my_flight[ i ].arrival_time.minute,
my_flight[ i ].arrival_time.meridian);
}
sort( my_flight);
printf("\nThe Flights after ordering :\n");
for( i = 0; i < NFlights; i++ )
{
printf( "Flight[%d]: %ld %s %s %s %d %d %d %d %d %d %d %d %d %d %d %d \n",i,
my_flight[ i ].flight_number,
my_flight[ i ].airline,
my_flight[ i ].arrival_city,
my_flight[ i ].departure_city,
my_flight[ i ].departure_time.month,
my_flight[ i ].departure_time.day,
my_flight[ i ].departure_time.year,
my_flight[ i ].departure_time.hour,
my_flight[ i ].departure_time.minute,
my_flight[ i ].departure_time.meridian,
my_flight[ i ].arrival_time.month,
my_flight[ i ].arrival_time.day,
my_flight[ i ].arrival_time.year,
my_flight[ i ].arrival_time.hour,
my_flight[ i ].arrival_time.minute,
my_flight[ i ].arrival_time.meridian);
}
return 0;
}