
In this course, you will learn the basics of the C programming language from the ground up — completely in Arabic.
Whether you’re just starting out or want to build a solid foundation in programming, this course covers everything you need in a simple and practical way.
Course Structure: Sections and Video Topics
Section 01: Introduction
Why programming?
What is a computer language?
What is a programming language?
Comparing C and C++
Downloading Code::Blocks
Using an online editor
Using Dcoder on mobile
Writing your first program
Section 02: Basics of C
Binary vs Decimal number systems
ASCII code
Variables
Data types
Conversion specifiers
Reading and printing with scanf and printf
A simple program to calculate the area of a rectangle
Section 03: Operators and Expressions
Escape sequences
Comments
Types of errors
Arithmetic operations
Expressions
Section 04: Control Structures
Sequential control
Selection control:
if, else if, else statements
switch, case, default
Repetition control:
while loop
do..while loop
for loop
Notes
A program to find remainder and quotient
break and continue statements
Sentinel-controlled repetition
Section 05: Practice Session
Solve 16 problems for revision
Section 06: Functions
Why use functions?
Function definition
Function declaration
Function prototype
Function calls
(Repeated) Function prototype
Return statement
Returning void
Parameters vs Arguments
Function overloading
Scope of variables
Section 07: Practice Session
Solve 5 problems + build a basic calculator
Section 08: Recursion and Arguments
Recursion (Recursive functions)
Example: Factorial
Passing arguments:
Call/Pass by Value
Call/Pass by Reference
Returning multiple values
Section 09: Arrays
Single and multi-dimensional arrays
Section 10: Practice Session
Solve 7 problems using arrays
Section 11: Characters and Strings
char in C
C strings:
String definition
String functions
Section 12: User-Defined Data Types
typedef
enum
struct
Section 13: Practice Session
Solve 4 problems
Section 14: Pointers
What is a pointer?
Memory addresses of variables
Defining pointer variables
Initializing pointers
Referencing and dereferencing
Pointer to pointer
Pointer expressions
Pointer assignment
Pointer arithmetic
Pointer comparison
Arrays with pointers
Strings with pointers
Array of strings
Functions returning multiple results
Static variables
Section 15: Sorting and Searching
Bubble sort
Linear search
Binary search
Section 16: File Handling
Why use files?
Files and streams
Opening, reading, writing, and closing files
Data hierarchy
Examples
Section 17: Final Project
Apply all topics in a final project
Includes revision videos throughout
Section 18: Advanced Topics and Ideas
Quiz-style ideas
Pattern design (like star patterns)
Tricky multiple-choice questions in C
struct vs union