Art of C Programming
Offered By: University of Calicut via Swayam
Course Description
Overview
The course “Art of C Programming” , deals with the fundamental concepts and terminology of computer programming. We provide you with an easy step-by-step guidance to systematically learn programming in C. This course starts with a proper introduction to the programming methodology and algorithm design. This will enable students to develop the skill to logically solve the assignments using C languages.Overall Objectives: • To develop a strong foundation for the fundamental principles of Problem Solving using computers • To learn the concept of programming • To study C Programming language • To equip the students to write programs for solving simple computing problems using C language as a tool.Expected Learning Outcomes:At the end of the course student will be able to: • Explain the fundamental process of problem solving using computers • Design algorithmic solutions for simple computing problems • Write reliable C programs for given algorithms. • Design, implement, test and debug programs that use different data types, such as simple variables, strings, arrays, pointers and structures • Write C programs for simple applications using files
Syllabus
WEEK 01:
THE ART OF PROGAMMING METHODOLOGY
Part A: Problem Solving – Flow Chart for Structured Programming – Program Charts – System Charts – Variables, data names, programming statements – Flow Chart Symbols – Terminal Symbols – I/O – Comments – Connectors – Process – Decision - Loops – Flow Charts of Fundamental Algorithms (mentioned in Part B)
Part B: Algorithm Design – Problem Solving Aspect – Top Down Design – Formal Conventions – Writing Algorithms – Fundamental Algorithms (Discuss the Design of Algorithms only).
WEEK 02:
THE ART OF PROGAMMING METHODOLOGY
Part C: Program, Characteristics of a good program - Modular Approach - Programming style - Documentation and Program Maintenance - Compilers and Interpreters - Running and Debugging Programs - Syntax Errors - Run-Time Errors - Logical Errors - Concept of Structured Programming.
C-FUNDAMENTALSFundamental facts about computer and computer languages - Machine language, symbolic languages, high level languages - keywords in C - basic data types - variables, constants, statements and the scope of variables in C programmes etc.
WEEK 03
MANIPULATING DATA OPERATORS AND EXPRESSIONS Expressions and operators - Binary arithmetical operators, unary arithmetical operators, assignment operators, relational and logical operators, conditional operators - Hierarchy or the order in which operators work when many of them are in use simultaneously. Library functions and their uses
INPUT AND OUTPUT IN C PART –1 Standard input and output library - C input functions like getchar, gets, getch, scanf, etc - The header file ‘stdio.h’. Week 04: INPUT AND OUTPUT IN C PART –2 Standard input and output library (STDIO) - Console input/output library (CONIO) - The function printf – Function ‘puts’ - sprintf and sscanf functions - The conio library functions such as clreol, clrscr, delline, gettext, gotoxy, textbackground, textcolor etc WEEK-04
CONTROL STRUCTURES IN C PART – IStructured programming language - Control instructions - Flow of control - Conditional and Unconditional control structures - selective constructs such as Conditional expression, if – else, switch-case etc.Week 05: CONTROL STRUCTURES IN C PART – II Loop control statements - Entry controlled loop (pre-test loop) - Exit controlled loop (post-test loop) - while - do while - for - Break, continue, goto, label statements
WEEK -05
C PROGRAMMING WITH ARRAYSScalar data types - Derived data types - Arrays - one-dimensional array – two-dimensional array – Multidimensional array - Character arrays.
FUNCTIONS IN ‘C’ Modular Programming Approach - Built-in functions or user-defined functions – main () - formal parameters and actual parameters - Function Call - passing by value, passing by reference (address) - void – recursion - Recursive Functions
WEEK-06
STORAGE CLASSES OF VARIABLES IN C Storage class - auto, static, extern, register and typedef - scope of variables - Static variables – extern variables – Register variables – typedef variables
WEEK -07
POINTERS IN C PART – IPointer variables - & operator - * operator - Arrays and pointers - Array of pointers - Pointer to an array - Character arrays.
POINTERS IN C PART – IIDeclaration of the pointer variable - Static and dynamic memory allocation - malloc (), calloc () functions – free () - main () - Standard parameters argc and *argv[ ].Week 08: STRUCTURE AND UNION IN C Structure data type - ‘struct’ data type - Prototype of the structure - Structure variable. dot (.) operator, Nested structure - Array of structures operator -> Union WEEK-08
FILE MANAGEMENT IN C PART -1 File - fopen() - read ( r ) , write ( w) , and append (a) - fprintf() - putc() - fclose()
WEEK-09
FILE MANAGEMENT IN C PART – 2fscanf() function - end of file character (EOF ) - Fgets() function - NULL character - Database files - fseek() , feof(), fread()
COMPILATION AND EXECUTIONCompilation and execution of a programme - Editor used to write the source code - Pre-processor - Compiler - Assembler - Linker - Library object files - Executable code – Integrated development environments (IDE) - Turbo C - The concept of prototyping - syntax errors
WEEK-10
LOW LEVEL PROGRAMMING AND SOME ADDITIONAL FEATURES OF C
# define statement - C pre-processor - facts related to macros in C, Wrong macros, register variables, bit fields and bitwise operations, enumeration and enum type variables - Command line arguments - Bitwise operations - Enumeration constants in C - Command line parametersWeek 10: TERM END ASSESSMENT:Interaction & Online Evaluation Term end assessment:Will provide the video answers to the most asked questions received from the students.
THE ART OF PROGAMMING METHODOLOGY
Part A: Problem Solving – Flow Chart for Structured Programming – Program Charts – System Charts – Variables, data names, programming statements – Flow Chart Symbols – Terminal Symbols – I/O – Comments – Connectors – Process – Decision - Loops – Flow Charts of Fundamental Algorithms (mentioned in Part B)
Part B: Algorithm Design – Problem Solving Aspect – Top Down Design – Formal Conventions – Writing Algorithms – Fundamental Algorithms (Discuss the Design of Algorithms only).
WEEK 02:
THE ART OF PROGAMMING METHODOLOGY
Part C: Program, Characteristics of a good program - Modular Approach - Programming style - Documentation and Program Maintenance - Compilers and Interpreters - Running and Debugging Programs - Syntax Errors - Run-Time Errors - Logical Errors - Concept of Structured Programming.
C-FUNDAMENTALSFundamental facts about computer and computer languages - Machine language, symbolic languages, high level languages - keywords in C - basic data types - variables, constants, statements and the scope of variables in C programmes etc.
WEEK 03
MANIPULATING DATA OPERATORS AND EXPRESSIONS Expressions and operators - Binary arithmetical operators, unary arithmetical operators, assignment operators, relational and logical operators, conditional operators - Hierarchy or the order in which operators work when many of them are in use simultaneously. Library functions and their uses
INPUT AND OUTPUT IN C PART –1 Standard input and output library - C input functions like getchar, gets, getch, scanf, etc - The header file ‘stdio.h’. Week 04: INPUT AND OUTPUT IN C PART –2 Standard input and output library (STDIO) - Console input/output library (CONIO) - The function printf – Function ‘puts’ - sprintf and sscanf functions - The conio library functions such as clreol, clrscr, delline, gettext, gotoxy, textbackground, textcolor etc WEEK-04
CONTROL STRUCTURES IN C PART – IStructured programming language - Control instructions - Flow of control - Conditional and Unconditional control structures - selective constructs such as Conditional expression, if – else, switch-case etc.Week 05: CONTROL STRUCTURES IN C PART – II Loop control statements - Entry controlled loop (pre-test loop) - Exit controlled loop (post-test loop) - while - do while - for - Break, continue, goto, label statements
WEEK -05
C PROGRAMMING WITH ARRAYSScalar data types - Derived data types - Arrays - one-dimensional array – two-dimensional array – Multidimensional array - Character arrays.
FUNCTIONS IN ‘C’ Modular Programming Approach - Built-in functions or user-defined functions – main () - formal parameters and actual parameters - Function Call - passing by value, passing by reference (address) - void – recursion - Recursive Functions
WEEK-06
STORAGE CLASSES OF VARIABLES IN C Storage class - auto, static, extern, register and typedef - scope of variables - Static variables – extern variables – Register variables – typedef variables
WEEK -07
POINTERS IN C PART – IPointer variables - & operator - * operator - Arrays and pointers - Array of pointers - Pointer to an array - Character arrays.
POINTERS IN C PART – IIDeclaration of the pointer variable - Static and dynamic memory allocation - malloc (), calloc () functions – free () - main () - Standard parameters argc and *argv[ ].Week 08: STRUCTURE AND UNION IN C Structure data type - ‘struct’ data type - Prototype of the structure - Structure variable. dot (.) operator, Nested structure - Array of structures operator -> Union WEEK-08
FILE MANAGEMENT IN C PART -1 File - fopen() - read ( r ) , write ( w) , and append (a) - fprintf() - putc() - fclose()
WEEK-09
FILE MANAGEMENT IN C PART – 2fscanf() function - end of file character (EOF ) - Fgets() function - NULL character - Database files - fseek() , feof(), fread()
COMPILATION AND EXECUTIONCompilation and execution of a programme - Editor used to write the source code - Pre-processor - Compiler - Assembler - Linker - Library object files - Executable code – Integrated development environments (IDE) - Turbo C - The concept of prototyping - syntax errors
WEEK-10
LOW LEVEL PROGRAMMING AND SOME ADDITIONAL FEATURES OF C
# define statement - C pre-processor - facts related to macros in C, Wrong macros, register variables, bit fields and bitwise operations, enumeration and enum type variables - Command line arguments - Bitwise operations - Enumeration constants in C - Command line parametersWeek 10: TERM END ASSESSMENT:Interaction & Online Evaluation Term end assessment:Will provide the video answers to the most asked questions received from the students.
Taught by
Dr. Lajish V.L
Tags
Related Courses
Natural Language ProcessingColumbia University via Coursera Intro to Algorithms
Udacity Conception et mise en œuvre d'algorithmes.
École Polytechnique via Coursera Paradigms of Computer Programming
Université catholique de Louvain via edX Data Structures and Algorithm Design Part I | 数据结构与算法设计(上)
Tsinghua University via edX