Credit points: 15

Subject outline

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.

SchoolEngineering and Mathematical Sciences

Credit points15

Subject Co-ordinatorRichard Skarbez

Available to Study Abroad/Exchange StudentsYes

Subject year levelYear Level 5 - Masters

Available as ElectiveNo

Learning ActivitiesN/A

Capstone subjectNo

Subject particulars

Subject rules

Prerequisites Admission 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

Equivalent subjectsN/A

Quota Management StrategyN/A

Quota-conditions or rulesN/A

Special conditionsN/A

Minimum credit point requirementN/A

Assumed knowledgeN/A

Career Ready


Work-based learningNo

Self sourced or Uni sourcedN/A

Entire subject or partial subjectN/A

Total hours/days requiredN/A

Location of WBL activity (region)N/A

WBL addtional requirementsN/A

Graduate capabilities & intended learning outcomes

Graduate Capabilities

Intended Learning Outcomes

01. Construct correct solutions to advanced programming problems using algorithms.
02. Accurately transform algorithms into C-code to produce a working program consisting of complex C features such as function pointers and recursive procedures.
03. Analyse complex examples of C-code accurately to identify syntax and logical errors.
04. Construct C code with no memory management errors.
05. Determine the output of a given C program.

Subject options

Select to view your study options…

Start date between: and    Key dates

Melbourne (Bundoora), 2021, Semester 1, Day


Online enrolmentYes

Maximum enrolment sizeN/A

Subject Instance Co-ordinatorRichard Skarbez

Class requirements

Laboratory ClassWeek: 10 - 22
One 3.00 h laboratory class per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

LectureWeek: 10 - 22
Two 1.00 h lecture per week on weekdays during the day from week 10 to week 22 and delivered via face-to-face.

Unscheduled Online ClassWeek: 10 - 22
One 1.50 h 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.


Assessment elementCommentsCategoryContributionHurdle% ILO*
Laboratory work (10 x 2-hour labs, equivalent to approximately 750 essay words) The lab work will involve developing and testing programs using the features of the programming language discussed in recent lectures. Lab work is face-to-face, in computer lab. Submission is via LMS.N/AN/AN/ANo15 SILO1, SILO2, SILO3, SILO4
One 3-hour exam (equivalent to 3000 words)N/AN/AN/ANo50 SILO1, SILO2, SILO3, SILO4, SILO5
Three programming assignments (equivalent to 1500 words) Small programming assignments (each equivalent to approximately 500 words), due in weeks 4, 8 and 12N/AN/AN/ANo30 SILO1, SILO2, SILO4
10 weekly quizzes (equivalent to 250 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.N/AN/AN/ANo5 SILO1, SILO2, SILO3, SILO4, SILO5