编辑代码

#include <iostream>
#include <stdlib.h>
#include <string.h>
#define MAXSIZE 100
using namespace std;

typedef struct {
	char name[20];
	int start;
	int end;
}Course;

Course c[5] = {
	{"高数      ",800,930},
	{"电子商务  ",830,1000},
	{"数据结构  ",930,1200},
	{"计算机基础",1000,1100},
	{"C语言     ",1130,1230}
};

void sort(Course c[])//将课程按照结束时间进行排序
{
	Course w;
	for (int i = 0; i < 5; i++)
	{
		for (int j = i + 1; j < 5; j++)
		{
			if (c[i].end > c[j].end)
			{
				w = c[j];
				c[j] = c[i];
				c[i] = w;
			}
		}
	}
}
void PrintArr(Course c[])//输出课程相关信息

{
	cout << "课程名称\t" << "开始时间\t" << "结束时间\t" << endl;
	for (int i = 0; i < 5; i++)
	{
		cout << c[i].name << "\t" << c[i].start / 100 << ":" << c[i].start % 100 << "\t\t" << c[i].end / 100 << ":" << c[i].end % 100 << endl;
	}
}
void PrintArr1(Course c[], int n)//用来输出已经排好的课程安排
{
	cout << "***可安排的课程如下:***" << endl;
	cout << "课程名称\t" << "开始时间\t" << "结束时间\t" << endl;
	for (int i = 0; i < n; i++)
	{
		cout << c[i].name << "\t" << c[i].start / 100 << ":" << c[i].start % 100 << "\t\t" << c[i].end / 100 << ":" << c[i].end % 100 << endl;
	}
}



void CourseArr(Course c[])
{
	Course temp = c[0];
	Course exc;
	int j = 1;
	for (int i = 1; i < 5; i++)
	{
		if (c[i].start > temp.end)
		{
			c[j] = c[i];
			temp = c[i];
			j++;
		}
	}
	PrintArr1(c, j);
}



int main()
{
	PrintArr(c);
	sort(c);
	PrintArr(c);
	CourseArr(c);
}