Skip to content

This repo contains the material covered in the "Short-term Hands-on Supplementary Course in C Programming" for building C programming skills amongst CSE undergraduates in SSNCE through a practicum-driven lesson plan during May-July 2022.

Notifications You must be signed in to change notification settings

nive927/Short-term-Hands-on-Supplementary-Course-on-C-Programming

Repository files navigation

Short-term Hands-on Supplementary Course on C Programming

This repo contains the material covered in the Short-term Hands-on Supplementary Course in C Programming for building C programming skills amongst the B.E. Computer Science & Engineering undergraduates in the Computer Science & Engineering Department at Sri Sivasubramaniya Nadar College of Engineering through a practicum-driven lesson plan during May-July 2022.

This certificate course was developed to support and enrich the material covered in the mandatory undergraduate courses UCS1201 Programming in C and UCS1211 Programming in C Lab. The team developed a curated lesson plan with offline & online classes, weekly assignments, code demos, and a capstone-project-cum-final-assessment for issuing merit certificates.

Team

Nivedhitha D Karthik D Dr. B. Prabavathy Dr. T. T. Mirnalinee
display-error display-error display-error display-error
B.E. CSE 2018-2022 B.E. CSE 2019-2023 Associate Professor Professor & Head of the Department

Course Project

Link to the project repository, and participant submissions.

  • A guided project that evaluates how the course participants implement a Command-Line Interface (CLI) program.

  • The starter code, problem specification, and automated unit-test cases for this project are made available to the participants in an invigilated laboratory environment.

  • Participants were given 60 minutes to understand the existing codebase, develop the logic, and meet as many project objectives as possible.

Course Schedule

Course Details and Lesson Plan can be found here!

Location & Timings Session Hands-On Handout Slides (PDF) Demo Programs Lecture Video
12-May-2022
02:30 - 3:40 PM
Seminar Hall
S01: C Programming Basics Tutorial: Expression Evaluation H01-C_Programming_Basics P01-C_Programming_Basics Replit, Github SOON
18-May-2022
06:30 - 8:00 PM
Online
S02: Conditional Statements Live Code Demo: Finding greatest of 2, 3 numbers
Tutorial: Simple calculator
H02-Conditional_Statements P02-Conditional_Statements Replit, Github V02-Conditional_Statements
21-May-2022
06:30 - 8:00 PM
Online
S03: Looping Statements Tutorial: Sum of n numbers, Factorial, Patterns H03-Looping_Statements P03-Looping_Statements Replit, Github V03-Iterative_Statements
25-May-2022
06:30 - 8:00 PM
Online
S04: Arrays Live Code Demo: Linear Search, Matrix Addition and Multiplication Tutorial: Insertion and Deletion in Arrays SOON P04-Arrays Replit, Github V04-Arrays
30-May-2022
06:30 - 8:00 PM
Online
S05: Array Operations Live Code Demo: Linear Search (Revisit), Selection Sort Tutorial: Insertion Sort SOON P05-Array_Operations Replit, Github V05-Array_Operations
04-June-2022
06:30 - 8:00 PM
Online
S06: Strings Live Code Demo: String Copy, Case Conversion Tutorial: String Reversal SOON P06-Strings Replit, Github V06-Strings
15-June-2022
06:30 - 8:00 PM
Online
S07: Functions Live Code Demo: Linear Search, Swapping Tutorial: Increment a Variable (by Reference) SOON P07-Functions Replit, Github V07-Functions
18-June-2022
06:30 - 8:00 PM
Online
S08: Recursive Functions and Variables Scopes Live Code Demo: Fibonacci, Factorial, Variable Scopes in C Tutorial: Recursion with Pointers, Tail Call Optimization SOON P08-RecursiveFunctions-VariableScopes Replit, Github V08-RecursiveFunctions-VariableScopes
22-June-2022
06:30 - 8:00 PM
Online
S09: Pointers Live Code Demo: Pointer Basics, Pointers and Arrays Tutorial: Allocating and Returning Heap Memory SOON P09-Pointers Replit, Github V09-Pointers
29-June-2022
06:30 - 8:00 PM
Online
S10: More on Pointers Live Code Demo: Pointer Arithmetic, 2D Arrays with Pointers Tutorial: Function Pointers, 2D Dynamic Arrays SOON P10-MoreOnPointers Replit, Github V10-MoreOnPointers
27-July-2022
06:30 - 8:00 PM
Online
S11: Structures Live Code Demo: Structures I/O, with Arrays and Functions Tutorial: Structures to Represent and Manipulate Fractions SOON P11-Structures Replit, Github SOON
Asynchronous
Online
S12: File Handling Live Code Demo: Text File I/O, Binary File I/O, Tutorial: Random Access File Read SOON P12-File_Handling Replit, Github SOON
Asynchronous
Online
S13: Structures and Files Live Code Demo: Dynamic Structure Intialization, Linked Lists Tutorial: Store Linked Lists in Files SOON P13-Files_and_Structures Replit, Github SOON
14-September-2022
01:30 - 3:30 PM
Java Technology Lab
S14: Project Development and Evaluation Lab Test: Develop a Todo Application from given Boilerplate Code NA NA Github Repository with Starter Code NA

Objectives

  • To lay solid foundations in C programming using a project-oriented practicum
  • To ensure that students are able to implement theoretical concepts programmatically
  • To promote collaborative learning by participating in coding parties and Ask Me Anything (AMA) sessions

Outcomes

  • Implement, compile, debug, and execute procedural programs in C
  • Implement C programs with appropriate data representation and programming constructs
  • Organize programs into functions and modules
  • Develop programming projects in C modularly and refine incrementally
  • Write clean and well documented code
  • Prepare for advanced coursework that employs C programming at its base

About

This repo contains the material covered in the "Short-term Hands-on Supplementary Course in C Programming" for building C programming skills amongst CSE undergraduates in SSNCE through a practicum-driven lesson plan during May-July 2022.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages