This repository contains a collection of various C programming projects designed to illustrate fundamental and advanced concepts in C. Each project is developed as a one-page example with detailed inline comments to help developers understand the language. All projects are fully documented and serve as practical exercises for learning and improving your C programming skills.
Maintained by Bocaletto Luca.
-
Hello World Program
A basic program that prints "Hello, World!" to the console, introducing the core structure of a C program. -
Simple Calculator
A command-line calculator that performs addition, subtraction, multiplication, and division based on user input. -
Temperature Converter
Converts temperature values between Celsius and Fahrenheit using user-defined criteria. -
Random Number Guessing Game
A game where the computer selects a random number and the user guesses it, with hints provided for each guess. -
Fibonacci Sequence Generator
Generates the Fibonacci sequence up to a specified number of terms using iterative methods. -
Prime Number Checker
Checks if an input number is prime, utilizing optimized loop conditions to improve efficiency. -
File I/O: Read and Write
Demonstrates basic file input and output operations by writing user input to a file and reading it back. -
Array-Based Stack Implementation
Implements a stack data structure using a fixed-size array, supporting push, pop, and peek operations. -
Sorting Algorithms: Bubble Sort and Insertion Sort
Provides complete examples of bubble sort and insertion sort algorithms applied to an array of integers. -
Searching Algorithms: Linear and Binary Search
Compares linear search with binary search, including requirements for sorting and efficiency considerations. -
Singly Linked List Implementation
Demonstrates a singly linked list with operations to insert, search, delete, and display nodes. -
Basic Banking System Simulation
A simulation of a simple banking system that includes account creation, deposit, withdrawal, and balance checking, with persistent file storage. -
Tic Tac Toe Game
A text-based Tic Tac Toe game for two players, complete with win/tie conditions and board display logic. -
Hangman Game
Implements the classic Hangman game, where players guess letters of a secret word with a limited number of wrong attempts. -
Caesar Cipher for Encryption/Decryption
Encrypts and decrypts text using the Caesar cipher, shifting letters by a specified number and handling both cases of text. -
Student Record Management System
A simple CRUD system to manage student records stored in a binary file, featuring operations to create, list, search, update, and delete records. -
Memory Management and Pointer Exercises
A series of exercises focusing on dynamic memory allocation, pointer arithmetic, and proper memory deallocation. -
Multithreading with POSIX Threads (pthreads)
Demonstrates the creation and synchronization of multiple threads using pthreads, with mutex locks to protect shared data. -
Basic Chatbot Program
A simple text-based chatbot that utilizes basic string pattern matching to respond to user input in an interactive loop. -
Binary Search Tree (BST) Implementation
Implements a binary search tree with operations for insertion, searching, and traversals (in-order, pre-order, and post-order).
This repository also includes other extra projects that explore various additional topics and techniques in C programming.
This repository is licensed under the GPL License.