![](https://coding-bootcamps.com/wp-content/uploads/2024/01/Learn-C-programming-by-hands-on-examples.jpg)
Learn C programming by hands-on examples
-
Free
-
-
About Course
This hands-on self-paced C programming course provides a comprehensive introduction to the ANSI C language, emphasizing portability and structured design. Students are introduced to all major language elements including fundamental data types, flow and control. Thorough treatment is given to the topics of string and character manipulation, dynamic memory allocation, standard I/O, macro definition, and the C runtime library.
The course explains the use of aggregate structures, unions, and pointers early on so the students can practice extensively in the hands-on labs.
Learning Objectives
In this course, you will learn the following:
- Components of a C program
- Using the C preprocessor
- Using standard runtime libraries
- Using make to build programs
- Working with debugger utilities
- Using data types, storage classes and scope
- Using typedef to make code more readable and portable
- Using operators and expressions
- Working with conditional and looping constructs
- Initializing a pointer
- Accessing the value addressed by a pointer
- Declaring and initializing arrays and multidimensional arrays
- I/O functions
Topics and Subtopics
The following topics and subtopics are covered in this course:
1- Overview of C Programming Language
- Operating System Independence
- Design Goals and Capabilities
- Flavors of C
2- Compiler Directives and the C Preprocessor
- Compile-Time Directives
- Use of typedef
- C Preprocessor Syntax
3- Fundamental Data Types, Storage Classes, and Scope
- Fundamental Data Types and Qualifiers
- Constants and Strings
- Storage Classes
- Scope and Block Structure
- Scope and Data Hiding
- Data Initialization
4- Pointers and Dynamic Allocation
- Advantages of Pointers
- User of Pointers
- Pointer and Address Arithmetic
- Dynamic Storage Allocation
- sizeof Operator
- Double Indirection
5- Macros
- Functions vs. Inlining
- Purpose of Macros
- Use of Macros
- Making Code More Readable
- Auto Adjustment of Compile Time Values
- Conditional Compilation
- Making Code Portable
- Simplifying Complex Access Calculations
- Advanced Micro Design Tips
- Using Macros to Help Write Portable Programs
- When to Use a Macro instead of a Function
- Using Macros for Debugging
6- Arrays
- Purpose of Arrays
- Declaring an Array
- Initializing an Array
- Addressing Elements
- Stepping Through an Array
- Variable Size Arrays
- Arrays of Pointers
- Arrays of Strings
- Passing an Array to a Function
- Dynamic Memory Allocation
- Multidimensional Arrays
7- Basic Formatted I/O
- Standard I/O Library
- Character Set Encoding
- Standard Input and Output
- Character I/O Functions
- Formatted I/O Functions
- String Constants
8- Program Debugging
- Problem Analysis
- Instrumenting with printif
- Instrumenting with ctrace
- The Purpose of Debuggers
- How Not to Use Debuggers
- Symbolic Debuggers
9- Operators and Expressions
- Arithmetic, Logical, and Bit Operators
- Precedence and Associativity
- Assignment and Casting
- The Conditional Operator
10- Flow Control Constructs
- Conditional Constructs: if, switch
- Looping Constructs: while, do, for
- Programming Style
Project 1- C Program to check whether the given integer is positive or negative
Project 2- C Program to find greatest of three numbers
Project 3- C Program to display Fibonacci series
Project 4- C Program to check if number is even or odd
Project 5- C Program to arrange numbers in ascending order
Project 6- C Program to convert uppercase string to lowercase string
Requirements
None.
Related Courses
- Introduction to Java Programming
- Introduction to Go Programming
- Learn Kotlin Programming by Examples
- Introduction to Python Programming
Complete Training Bundle
If you are serious about becoming a pro software engineer, you should enroll in our Complete Training Bundle for Software Engineers class, This bundle covers all essential and practical topics related to software design and development. For $290 monthly subscription, you can have access to 300+ hours of hands-on project-based training covering all courses related to software development like Python, Java, Kotlin, C/C++ Go and more. Click here to learn more.
Private Tutoring Classes
To take skills you learn from this course to the next level, taking the following tutoring classes are highly recommended. It is also a great opportunity to discuss your questions and problems related to this course with an experienced instructor:
- Private tutoring sessions for software design and engineering- Weekly and monthly plans
- C and C++ programming languages- Private tutoring sessions
What Is Next?
After finishing this course, you can enroll in any of following classes:
- Intermediate level C programming language with hands-on examples
- Learn C++ Programming by Examples
- Introduction to Database Design
- Learn SQL Programming by Examples
- Intro to Blockchain Technology
- Introduction to Linux OS
- Intro to Linux Bash Scripting
Recommended Free Courses
If you are new to the IT or programming, we suggest the following free courses:
- Tag
- C Programming
- C++