Skip to content

samirm00/c

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

C Projects

This document outlines a series of C programming projects, ranging from beginner to advanced levels. Each project includes a brief description and a link to the main file.

Beginner Projects

A simple implementation of the classic game where the user plays against the computer. This project introduces basic concepts like input/output, conditionals, and random number generation.

A basic calculator that performs simple arithmetic operations such as addition, subtraction, multiplication, and division. This project helps you understand functions and switch-case statements.

A game where the computer generates a random number and the user has to guess it. This project focuses on loops, conditionals, and random number generation.

A program that converts temperatures between Celsius, Fahrenheit, and Kelvin. This project is useful for learning about user input and arithmetic operations.

A console-based to-do list application where users can add, view, and delete tasks. This project introduces the basics of working with arrays and strings.

A program that converts amounts between different currencies. This project helps practice arithmetic operations and user input.

A simple voting system where users can vote for candidates and see the results. This project involves arrays and input/output handling.

A program that checks whether a given number is odd or even. This project is useful for learning conditionals and modulus operations.

A program that calculates the factorial of a given number. This project introduces recursion and iterative methods.

A program that checks if a given number is prime. This project involves loops and conditionals.

A program that checks if a given string or number is a palindrome. This project involves string handling and loops.

A program that generates the Fibonacci sequence up to a specified number. This project introduces loops and recursion.

A simple quiz application where users answer multiple-choice questions. This project covers arrays, strings, and input/output.

A console-based stopwatch application. This project involves working with time functions and loops.

A simple alarm clock that allows the user to set an alarm. This project involves working with time and input/output.

A program that calculates the grade based on scores entered by the user. This project covers basic arithmetic and conditionals.

A program that calculates simple interest based on user input. This project involves arithmetic operations and user input.

A program that calculates compound interest. This project involves loops and arithmetic operations.

A program that converts distances between various units. This project involves user input and arithmetic operations.

A simple login system where users can register and log in. This project covers file handling and string manipulation.

A basic voting system that allows users to cast votes and displays results. This project involves arrays and conditionals.

A program that encrypts and decrypts messages using a basic algorithm. This project introduces string manipulation and basic encryption techniques.

A program that calculates the area of various shapes like circle, rectangle, and triangle. This project covers arithmetic operations and user input.

A program that calculates the Body Mass Index (BMI) based on user input. This project involves arithmetic operations and conditionals.

A program that checks if an email address is valid based on simple criteria. This project involves string manipulation and regular expressions.

A program that checks if a given year is a leap year. This project involves conditionals and arithmetic operations.

A program that calculates the power of a number using both iterative and recursive methods. This project introduces loops and recursion.

A program that displays a simple calendar for a given month and year. This project involves loops and conditionals.

A program that generates simple ASCII art from user input. This project covers loops, conditionals, and string manipulation.

A program that checks if two given strings are anagrams. This project involves string manipulation and sorting algorithms.

Intermediate Projects

A program that counts the number of words in a given text. This project involves string handling and loops.

A program that copies the contents of one file to another. This project introduces file handling.

A program that counts the number of vowels in a given string. This project involves loops and string manipulation.

A program that calculates the Greatest Common Divisor (GCD) of two numbers using Euclidean algorithm. This project covers loops and conditionals.

A program that calculates the Least Common Multiple (LCM) of two numbers. This project involves arithmetic operations and loops.

A program that converts a binary number to decimal. This project covers loops and arithmetic operations.

A program that converts a decimal number to binary. This project involves loops and arithmetic operations.

A program that converts a hexadecimal number to decimal. This project covers string manipulation and arithmetic operations.

A program that converts a decimal number to hexadecimal. This project involves loops and string manipulation.

A program that adds two matrices. This project covers arrays, loops, and arithmetic operations.

A program that multiplies two matrices. This project involves arrays, loops, and arithmetic operations.

A program that calculates the transpose of a matrix. This project covers arrays and loops.

A program that calculates the determinant of a matrix. This project involves arrays and recursion.

A program that calculates the inverse of a matrix. This project covers arrays, loops, and advanced arithmetic operations.

A program that generates all prime numbers up to a given limit using the Sieve of Eratosthenes algorithm. This project involves arrays and loops.

A program that sorts an array using the bubble sort algorithm. This project introduces basic sorting algorithms.

A program that sorts an array using the selection sort algorithm. This project involves arrays and loops.

A program that sorts an array using the insertion sort algorithm. This project covers arrays and loops.

A program that sorts an array using the merge sort algorithm. This project involves recursion and arrays.

A program that sorts an array using the quick sort algorithm. This project covers recursion and arrays.

A program that implements binary search algorithm on a sorted array. This project introduces searching algorithms and conditionals.

A program that implements the linear search algorithm on an array. This project involves loops and conditionals.

A program that checks if a given number is a palindrome. This project involves loops and conditionals.

A program that reverses a given string. This project involves string manipulation and loops.

A program that reverses the digits of a given number. This project involves loops and arithmetic operations.

A program that counts the number of digits in a given number. This project involves loops and conditionals.

A program that checks if a given number is an Armstrong number. This project involves loops and arithmetic operations.

A program that checks if a given number is a strong number. This project involves loops and conditionals.

A program that checks if a given number is a perfect number. This project involves loops and conditionals.

A program that finds the largest element in an array. This project involves loops and arrays.

A program that finds the smallest element in an array. This project involves loops and arrays.

A program that calculates the sum of elements in an array. This project involves loops and arrays.

A program that calculates the average of elements in an array. This project involves loops and arrays.

A program that finds the second largest element in an array. This project involves loops and arrays.

A program that finds the frequency of each element in an array. This project involves loops and arrays.

A program that merges two arrays into one. This project involves loops and arrays.

A program that splits an array into two halves. This project involves loops and arrays.

A program that cyclically rotates an array by one position. This project involves loops and arrays.

A program that counts the number of vowels and consonants in a string. This project involves loops and string manipulation.

A program that removes all vowels from a given string. This project involves loops and string manipulation.

A program that finds a substring within a given string. This project involves loops and string manipulation.

A program that removes all spaces from a given string. This project involves loops and string manipulation.

A program that counts the number of words in a string. This project involves loops and string manipulation.

A program that finds a substring and replaces it with another substring in a given string. This project involves loops and string manipulation.

A program that capitalizes the first letter of each word in a string. This project involves loops and string manipulation.

A program that converts all lowercase letters to uppercase in a string. This project involves loops and string manipulation.

A program that converts all uppercase letters to lowercase in a string. This project involves loops and string manipulation.

A program that counts the occurrences of a character in a string. This project involves loops and string manipulation.

A program that removes all occurrences of a character from a string. This project involves loops and string manipulation.

A program that reverses the order of words in a string. This project involves loops and string manipulation.

A program that checks if one string is a subsequence of another. This project involves loops and string manipulation.

A program that finds the longest common subsequence between two strings. This project involves loops and dynamic programming.

A program that finds the longest increasing subsequence in an array. This project involves loops and dynamic programming.

A program that calculates the edit distance between two strings. This project involves loops and dynamic programming.

A program that solves the knapsack problem using dynamic programming. This project involves loops and dynamic programming.

Advanced Projects

A program that solves the N-Queens problem using backtracking. This project involves recursion and backtracking.

A program that solves a given Sudoku puzzle. This project involves recursion and backtracking.

A program that finds a path for a rat in a maze using backtracking. This project involves recursion and backtracking.

A program that finds words in a grid using backtracking. This project involves recursion and backtracking.

A program that represents a graph using adjacency matrix and adjacency list. This project involves arrays and linked lists.

A program that implements the Depth First Search (DFS) algorithm on a graph. This project involves recursion and graphs.

A program that implements the Breadth First Search (BFS) algorithm on a graph. This project involves queues and graphs.

A program that finds the shortest path in a graph using Dijkstra's algorithm. This project involves priority queues and graphs.

A program that finds shortest paths between all pairs of vertices in a graph. This project involves dynamic programming and graphs.

A program that finds the Minimum Spanning Tree (MST) of a graph using Prim's algorithm. This project involves priority queues and graphs.

A program that finds the Minimum Spanning Tree (MST) of a graph using Kruskal's algorithm. This project involves disjoint sets and graphs.

A program that performs topological sorting on a directed acyclic graph. This project involves recursion and graphs.

A program that implements Huffman coding for data compression. This project involves priority queues and trees.

A program that implements a Trie data structure for efficient information retrieval. This project involves trees and strings.

A program that simulates a Turing machine. This project involves complex logic and data structures.


If you need to use cs50 library,

1.Install cs50

2.Create a file Makefile in the project folder and add

CC= clang
LDLIBS =-lcs50

3.Then just run

make main

4.Then run

./main

Releases

No releases published

Packages

No packages published

Languages