Solving problems is a very important exercising activity for students in an introductory computer programming course. The paper introduces the construction of a three-level problem corpus for training the students' programming skills.The first level consists of the C programming language syntax problems, including data types, control flow, functions, pointers and arrays, structures, etc. For each syntax point, there are several problems of different difficulties and each problem is in the form of single-choice question.The second level consists of the programming problems. For each problem, a text description is given and the students are required to write the corresponding source code. The purpose is to train the skills of problem analysis, algorithm design and coding. Besides, each problem is provided with a couple of reference source codes which were written by experienced programmers, the students can learn how to program by studying these good examples.The third level consists of programming projects that are collected from the Internet and previous courses. These projects are relatively bigger programming problems, for example, the Tetris game, the PacMan game, the calculator simulator. For each project, the full source codes and detailed documents are given. The students can learn how to implement a practical software by reviewing these projects, they can also modify the source codes and add some new features.The above corpus is already used in our programming course at Tsinghua University. Initial observations show that students improved their programming skills after they have completed those problems in the corpus.
Weijun Chen, Tsinghua University, China
Paper Information Conference: ACE2017
Stream: Higher education
Added on Wednesday, October 11th, 2017
View / Download the full paper in a new tab/window