编辑代码


#include<iostream>
#include<string.h>
#define MaxSize 20
using namespace std;
struct A
{
	string name;
	double begin;
	double end;
};
typedef struct Cless
{
	A data[MaxSize];
}cless;
void print(cless *a, int i)
{
	int n;
	for(n=0;n<i;++n)
	{
		cout<<a->data[n].name<<": "<<a->data[n].begin<<" ~ "<<a->data[n].end;
		cout<<endl;
	}
}
int fenpei(cless *b, int n)
{
	int i,j;
	double cg;
	if(b!=NULL)
	{
		cg=b->data[5-n].end;
		for(i=5-n;i<n;i++)
		{
			if(cg>b->data[i].end)
				cg=b->data[i].end;
		}
		for(i=5-n;i<n;i++)
		{
			if(cg>b->data[i].begin && cg<b->data[i].end)
			{
				for(j=i;j<n;j++)
				{
					b->data[j].name=b->data[j+1].name;
					b->data[j].begin=b->data[j+1].begin;
					b->data[j].end=b->data[j+1].end;
				}
				n--;
			}
		}
	}
	return n;
}
int main()
{
	int m;
	cless c[]=
	{
		"高数", 8.00, 9.30,
		"电子商务", 8.30, 10.00,
		"数据结构", 9.30, 12.00,
		"计算机基础", 10.00, 11.00,
		"C语言", 11.30, 12.30,
	};
	cout<<"全部课程如下:"<<endl<<endl;
	print(c,5);
	cout<<endl<<"选中的课程如下:"<<endl;
	m=fenpei(c,5);
	m=fenpei(c,m);
	print(c,m);
	return 0;
}