Project 2


Project 2 is an advanced project, which aims to promote the software design ability of the senior students.


[Step 1] Use arrays to improve existing calendar program

Use arrays to improve existing calendar programs.

· Requirement 1: integrate with the first five experiments.

· Requirement 2: using codeblock.

· Requirement 3: use arrays to improve existing calendar programs.

· Knowledge Point: Add arrays based on previous conditional statements and functions

· More information:step 1.pdf

· Sample outputs of this step:



[Step 2] curriculum program 1.0

Write the program of curriculum, which supports the document to read and write records.

· Requirement 1: Write the curriculum program, supporting documents to read and write.

· Requirement 2: The program is running after the first read the syllabus.txt file, which loads the structure of the array data into memory. The user does not need to operate the file when operating the curriculum.

· Requirement 3: Separate files according to different functions. The main function is simple and clear.

· Requirement 4: The user's operation includes: the user can choose to delete the course information of a class record number, modify the class date and time of a class record, and add new class record information.

· Requirement 5: After each user adds or modifies the class record, the class record will be sorted by the array according to the time sequence, and the class record number will be updated automatically.

· Knowledge Point: Start learning to use structured statements.

· More information:step 2.pdf

· Sample outputs of this step:



[Step 3] curriculum program 2.0

· Requirement 1: Instead of an array, you are required to use a linked list to record lecture notes for the entire semester

· Requirement 2: Requirements for the whole program design and ideas.

· Requirement 3: If these functions are to be developed by other students, how do you document their interactions? How do you test these functions to see if they meet your design requirements?

· Knowledge Point: Start using linked list based on the previous base statement

· More information:step 3.pdf

· Sample outputs of this step: