用c语言编写一个程序,要求1输入参数包括学期总数,一学期的学分上限,每门课的课程号,学分和直接选修课的课程号   2允许用户指定下列两种编排策略之一,一是使学生在个学期中的学习负担尽量均匀,二是使课程尽量可能的集中在前几个学期中。
3若根据给定的条件问题无解,则报告适当的信息,否则将教学计划输入到用户指定的文件中。计划的表格格式自行设计。
       请大家帮帮忙!!很急啊!!

解决方案 »

  1.   

    大体看了你的问题描述,有一个问题:
    不知道你用来干什么?不应该是毕业设计之类的工作吧?如果是作业或者其他原因,你还是自己多考虑。
    我认为首先应该是建模:
    专业包括学年和课程
    学年包括学期和学分上限
    课程包括课程号、学分和直接选修课
    建立数据结构:
    struct course
    {
      int crID;
      int iCredithour;
      course *pNextCr;
    }
    struct academicyear
    {
      int iSemester;
      int iMaxcredithour;
    }
    struct speciality
    {
      academicyear *pAY;
      course *pCr;
    }
    有一个很重要的关系:
    课程的学分和学期的上限学分
    也是编排策略的重要依据
    在进行编排之前要对课程进行排序,具体方法自己定夺。
    我认为可以用课程的学分或者直接选修课的逻辑关系来排:)
    具体如何编程,你还是自己仔细想一想