Lavin-tom / c_programming

This Github repository is a collection of C coding examples and projects with brief explanation comments. It is designed to help C programmers of all levels learn and practice their skills on a variety of topics.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

C Programming Concepts

This repository contains a collection of C programs that illustrate various concepts in C programming. The programs are organized by topic and are accompanied by brief comments explaining the key concepts and techniques used.

Getting Started

To compile and run these programs, you will need a C compiler such as GCC or Clang. You can install these compilers on your system using a package manager or by downloading them from their respective websites. Once you have a compiler installed, you can navigate to the directory containing the program you wish to run and use the gcc or clang command to compile it, like so:

$ gcc program.c -o program
$ ./program

Search this repository with a Keyword

To search for a specific keyword in this repository, click on the following link:

Search this repository

Search the keyword on the seach bar or add your keyword at the end of the URL, after the q= parameter.

For example, to search for the keyword "example", the URL would be:

https://github.com/Lavin-tom/c_programming/search?q=example

Press enter after adding the keyword to see the search results.

Concepts Covered

For each topic, there are one or more programs that demonstrate the key concepts.The following table summarizes the concepts covered in this repository:

Basic Syntax

Concept Topics that covered
Array Demonstrates the use of 1D and 2D array
Command line arguments atoi atof atoi_user_function atof_user_function load time input
Coding challenge various coding challenge questions in c
Condition compilation #if #else #ifdef #ifndef #endif
Control statement do while goto pattern programs switch case
Data structure Linked list
circular linked list doubly linked list singly linked list
Queue
circular queue double ended queue priority queue
Sorting
bubble sort insertion sort merge sort quick sort selection sort
Stack
stack linked list balanced parathesis
Tree
binary tree binary serach tree
Dynamic memory allocation malloc calloc realloc free
Enum Demonstrates the use of enum
Files fgetc fgets fopen fprintf fputc fputs fscanf fseek ftell
Functions call by value call by reference function pointers
Hacker rank c questions Various C coding questions from Hackerrank.com
Macros macros with arguments macros without arguments special macros
Makefile Demostrates the use of make file concept
Multiple file compilations Demostrate how multiple file compilations works
Number Series Demostrate how multiple file compilations works
Operators bitwise conditional increment and decrement logical sizeof
Pointers Various code of pointers and function pointers
Random Codes Most common c coding questions
Recursive function Common c codes with recursive function
Storage class auto extern static static vs global
Strings strlen strcpy strncpy strcmp strncmp strstr strchr and various string concepts
Structure Various code of structures
Typedef Demostrate the use of typedef in codes
Union Demostrate union concept with various codes
Variable arugument list function Demostrate varibale argument list function with various codes

Contributing

If you have a program or example that you think would be a good addition to this repository, please feel free to submit a pull request or open an issue. Contributions are always welcome!

NOTE

I am still learning, so the code in this repository may not be optimized and may contain errors or bugs. Please feel free to point out any issues or suggest improvements. Your feedback is greatly appreciated!

About

This Github repository is a collection of C coding examples and projects with brief explanation comments. It is designed to help C programmers of all levels learn and practice their skills on a variety of topics.


Languages

Language:C 85.7%Language:Kotlin 6.6%Language:SWIG 3.1%Language:JavaScript 1.9%Language:Makefile 1.5%Language:Python 0.8%Language:C++ 0.2%Language:Assembly 0.2%