C PROGRAMMING FOR ENGINEERS AND SCIENTISTS (PG)
Credit points: 15
This subject introduces procedural programming to engineering students via the C programming language. Topics include the C compiler and pre-processor, functions and programming structures, pointers and arrays, structures, input/output and the UNIX interface.
SchoolSchool Engineering&Mathematical Sciences
Subject Co-ordinatorSomnath Ghosh
Available to Study Abroad StudentsYes
Subject year levelYear Level 5 - Masters
Prerequisites Enrolment in one of the following courses: SMIT, SMITCN, SMICT, SMCSC, SMBBS, SGBBS, SGCS, SGIT, SMELE or SMTNE.
Incompatible subjects CSE1CES and Students in the following courses are not permitted to enrol: SBCS, SBIT, SBCSGT, SVCSE, SZCSC, SBITP and SBBIY.
|Resource Type||Title||Resource Requirement||Author and Year||Publisher|
|Readings||C Programming A modern approach||Prescribed||K.N.King||W.W.Norton|
Graduate capabilities & intended learning outcomes
01. Construct correct solutions to advanced programming problems using algorithms.
- Students have 7 lectures describing basic C syntax and design with advanced lectures discussing higher level data structures and problem solving. Students are required to construct correct solutions to problems in the assignment, 10 laboratories and 1 exam.
02. Accurately transform algorithms into C-code to produce a working program consisting of complex C features such as function pointers and recursive procedures.
- In laboratories, assignments and lectures students are required to transform algorithms to equivalent C code in the assignment, 10 laboratories and 1 exam. The CSE5CES students will be need to use more complex features of C than CSE1CES when doing labs and the exam. These features include function pointers and recursive procedures.
03. Analyse complex examples of C-code accurately to identify syntax and logical errors.
- In lectures students are taught correct syntax and logical design along with debugging tools to identify errors in code. Students are required to identify mistakes in C code in the 10 laboratories and 1 exam.
04. Construct C code with no memory management errors.
- 5 lectures cover specific topics of memory allocation, file I/O and higher level data structures Students are required to write C code with correct memory management usage in 4 laboratories, the assignment and the exam.
05. Determine the output of a given C program.
- Students are shown code samples in lectures where a walkthrough of the code with associated outputs is provided. Students are required to write down the output of given C programs in 1 exam.
06. Correctly implement basic multi-process programmes and basic multi-threaded programmes.
- Covered in the laboratory sessions in weeks 11 and 12.
Select to view your study options…
Melbourne, 2018, Semester 1, Day
Maximum enrolment sizeN/A
Subject Instance Co-ordinatorSomnath Ghosh
One 1.0 hours laboratory class per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.
Two 1.0 hours lecture per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.
Unscheduled Online Class
One 1.5 hours unscheduled online class per week on any day including weekend during the day from week 10 to week 22 and delivered via online.
"1.5 hours of online learning material and activities (Short videos between 5 to 15 minutes, each covering a different topic) to be completed before the face-to-face lecture for the week."
One 2.0 hours laboratory class per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.
"Optional for students requiring extra assistance."
|Laboratory work (10 x 2-hour labs, equivalent to approx 750 essay words)||Face to face laboratory work, in Computer Lab, submission via LMS for assessment.||15||01, 02, 03, 04|
|One 2.5-hour exam (equivalent to 2750 essay words)||50||01, 02, 03, 04, 05|
|Three Assignments (equivalent to 1350 essay words)||Small programming assignments (each equivalent to 400 words eassy), due in weeks 4, 8 and 12 respectively)||30||01, 02, 04, 06|
|Quizzes (equivalent to approx 300 essay words)||Online quizzes (5 questions randomly chosen from a question bank). Completion of the online quiz is a pre-lab requirement, A lab work cannot be submitted without completion of the online quiz for the week.||5||01, 02, 03, 04, 05|