#include <iostream>
#include <stdlib.h>
#include <string.h>
#define MAXSIZE 100
using namespace std;
typedef struct {
char name[20];
int S = 0;
int E = 0;
}Course;
Course arr[5] = {
{"高数\t",800,930},
{"电子商务\t",830,1000},
{"数据结构\t",930,1200},
{"计算机基础\t",1000,1100},
{"C语言\t",1130,1230}
};
void sort(Course arr[])
{
Course w;
for (int i = 0; i < 5; i++)
{
for (int j = i+1; j < 5; j++)
{
if (arr[i].E > arr[j].E)
{
w = arr[j];
arr[j] = arr[i];
arr[i] = w;
}
}
}
}
void OutP1(Course arr[])
{
printf("课程\t上课\t下课\n");
for (int i = 0; i < 5; i++)
{
cout<< arr[i].name<<" " << arr[i].S / 100 << ":" << arr[i].S % 100 << "\t\t" << arr[i].E / 100 << ":" << arr[i].E % 100 << endl;
}
}
void OutP2(Course arr[],int n)
{
cout << "---可安排课程:---" << endl;
cout << "课程名称\t" << "开始时间\t" << "结束时间\t" << endl;
for (int i = 0; i < n; i++)
{
cout << arr[i].name << " " << arr[i].S /100<<":"<< arr[i].S% 100 << "\t\t" << arr[i].E / 100 << ":" << arr[i].E % 100 << endl;
}
}
void CourseArr(Course arr[])
{
Course temp=arr[0];
int j = 1;
for (int i = 1; i < 5; i++)
{
if (arr[i].S > temp.E)
{
arr[j] = arr[i];
temp = arr[i];
j++;
}
}
OutP2(arr, j);
}
int main()
{
OutP1(arr);
sort(arr);
OutP1(arr);
CourseArr(arr);
}