Merge Sort in C – Algorithm, Program, and Complexity

Merge sort in C is a classic divide-and-conquer sorting algorithm that guarantees O(n log n) time in all cases. It splits an array into halves, recursively sorts each half, then merges the sorted halves back together. Unlike bubble sort or insertion sort, merge sort never degrades to O(n²) — making it the preferred choice when …

Insertion Sort in C – Program, Algorithm and Complexity

Insertion sort is one of the simplest sorting algorithms and works exactly the way you sort a hand of playing cards. You take one card at a time and insert it into its correct position among the cards already sorted in your hand. It sorts the array one element at a time, building the sorted …

C Program to reverse the first n characters in a file.

This program reads a filename and a count n from the command line, reads the first n characters from the file, reverses them in-place using a two-pointer swap, and prints the result. It demonstrates combining command-line argument parsing, file I/O with fread(), and in-place string reversal in a single practical program. The original post used …

C program which copies one file contents to another file.

Copying a file in C demonstrates how to combine file I/O functions (fopen, fgetc, fputc, fclose) with command-line arguments to build a practical utility. The program reads filenames from argv, opens both files, copies byte-by-byte, and reports how many bytes were transferred. The original version used conio.h, process.h, void main(), and stored the return value …

Generate Random Numbers in C – rand() and srand() Explained

This C program to generate random numbers uses the standard library functions rand() and srand(). rand() returns a pseudo-random integer between 0 and RAND_MAX (at least 32767). “Pseudo-random” means the sequence is determined by a starting value called the seed. Seeding with time(NULL) ensures a different sequence every time the program runs. Key Functions Function …

sleep() Function in C — Portable Example

This C program demonstrates the sleep() function, which pauses (delays) the execution of your program for a set amount of time. This is handy for animations, retry loops, timed messages, or simply slowing a program down so you can watch what it does. Because the function differs between operating systems, this tutorial gives you one …