C Real-Life Examples

Discover practical examples of C programming used in real-world projects. This section provides insights into various applications of variables, data types, and other concepts essential for developing robust software solutions.



C Real-Life Examples

This page contains a list of practical examples used in real-world projects.

Variables and Data Types

Example 1: Storing Student Data

Use variables to store different data of a college student:

Example Code

// Student data
int studentID = 15;
int studentAge = 23;
float studentFee = 75.25;
char studentGrade = 'B';

// Print variables
printf("Student id: %d\n", studentID);
printf("Student age: %d\n", studentAge);
printf("Student fee: %.2f\n", studentFee);
printf("Student grade: %c\n", studentGrade);

Example 2: Calculate the Area of a Rectangle

Calculate the area of a rectangle (by multiplying the length and width):

Example Code

// Create integer variables
int length = 4;
int width = 6;
int area;

// Calculate the area of a rectangle
area = length * width;

// Print the variables
printf("Length is: %d\n", length);
printf("Width is: %d\n", width);
printf("Area of the rectangle is: %d\n", area);

Example 3: Total Cost Calculation

Use different data types to calculate and output the total cost of a number of items:

Example Code

// Create variables of different data types
int items = 50;
float cost_per_item = 9.99;
float total_cost = items * cost_per_item;
char currency = '$';

// Print variables
printf("Number of items: %d\n", items);
printf("Cost per item: %.2f %c\n", cost_per_item, currency);
printf("Total cost = %.2f %c\n", total_cost, currency);

Example 4: Calculate Percentage

Calculate the percentage of a user's score in relation to the maximum score in a game:

Example Code

// Set the maximum possible score in the game to 500
int maxScore = 500;

// The actual score of the user
int userScore = 423;

// Calculate the percentage of the user's score in relation to the maximum available score
float percentage = (float) userScore / maxScore * 100.0;

// Print the percentage
printf("User's percentage is %.2f%%\n", percentage);

For a tutorial about variables and data types in C, visit our Variables Chapter and Data Types Chapter.

Booleans

Example 1: Age Check for Voting

Find out if a person is old enough to vote:

Example Code

int myAge = 25;
int votingAge = 18;

printf("%d\n", myAge >= votingAge); // Returns 1 (true), meaning 25 year olds are allowed to vote!

Example 2: Voting Eligibility Message

Output "Old enough to vote!" if myAge is greater than or equal to 18. Otherwise, output "Not old enough to vote.":

Example Code

int myAge = 25;
int votingAge = 18;

if (myAge >= votingAge) {
  printf("Old enough to vote!");
} else {
  printf("Not old enough to vote.");
}

For a tutorial about booleans in C, visit our Booleans Chapter.

Conditions (If..Else)

Example 1: Time-Based Greeting

Use if..else statements to output some text depending on what time it is:

Example Code

int time = 20;
if (time < 18) {
  printf("Good day.");
} else {
  printf("Good evening.");
}

Example 2: Door Code Check

Check whether the user enters the correct code:

Example Code

int doorCode = 1337;

if (doorCode == 1337) {
  printf("Correct code.\nThe door is now open.");
} else {
  printf("Wrong code.\nThe door remains closed.");
}

Example 3: Positive or Negative Check

Find out if a number is positive or negative:

Example Code

int myNum = 10;

if (myNum > 0) {
  printf("The value is a positive number.");
} else if (myNum < 0) {
  printf("The value is a negative number.");
} else {
  printf("The value is 0.");
}

Example 4: Even or Odd Check

Find out if a number is even or odd:

Example Code

int myNum = 5;

if (myNum % 2 == 0) {
  printf("%d is even.\n", myNum);
} else {
  printf("%d is odd.\n", myNum);
}

For a tutorial about conditions in C, visit our If..Else Chapter.

Switch

Example: Weekday Name from Number

Use the weekday number to calculate and output the weekday name:

Example Code

int day = 4;

switch (day) {
  case 1:
    printf("Monday");
    break;
  case 2:
    printf("Tuesday");
    break;
  case 3:
    printf("Wednesday");
    break;
  case 4:
    printf("Thursday");
    break;
  case 5:
    printf("Friday");
    break;
  case 6:
    printf("Saturday");
    break;
  case 7:
    printf("Sunday");
    break;
}

For a tutorial about switch in C, visit our Switch Chapter.

While Loops

Example 1: Countdown Program

Use a while loop to create a simple "countdown" program:

Example Code

int countdown = 3;

while (countdown > 0) {
  printf("%d\n", countdown);
  countdown--;
}

printf("Happy New Year!!\n");

Example 2: Yatzy Game

Use a while loop to play a game of Yatzy:

Example Code

int dice = 1;

while (dice <= 6) {
  if (dice < 6) {
    printf("No Yatzy\n");
  } else {
    printf("Yatzy!\n");
  }
  dice = dice + 1;
}

Example 3: Reverse Numbers

Use a while loop to reverse some numbers:

Example Code

// A variable with some specific numbers
int numbers = 12345;

// A variable to store the reversed number
int revNumbers = 0;

// Reverse and reorder the numbers
while (numbers) {
  // Get the last number of 'numbers' and add it to 'revNumber'
  revNumbers = revNumbers * 10 + numbers % 10;
  // Remove the last number of 'numbers'
  numbers /= 10;
}

For a tutorial about while loops in C, visit our While Loop Chapter.

For Loops

Example 1: Print Even Values

Use a for loop to create a program that only prints even values between 0 and 10:

Example Code

int i;

for (i = 0; i <= 10; i = i + 2) {
  printf("%d\n", i);
}

Example 2: Count to 100 by Tens

Use a for loop to create a program that counts to 100 by tens:

Example Code

for (i = 0; i <= 100; i += 10) {
  printf("%d\n", i);
}

Example 3: Print Powers of 2

Use a for loop to print the powers of 2 up to 512:

Example Code

for (i = 2; i <= 512; i *= 2) {
  printf("%d\n", i);
}

Example 4: Multiplication Table

Use a for loop to create a program that prints the multiplication table of a specified number (2 in this example):

Example Code

int number = 2;
int i;

// Print the multiplication table for the number 2
for (i = 1; i <= 10; i++) {
  printf("%d x %d = %d\n", number, i, number * i);
}

return 0;

For a tutorial about for loops in C, visit our For Loop Chapter.

Arrays

Example 1: Average Age Calculation

Create a program that calculates the average of different ages:

Example Code

// An array storing different ages
int ages[] = {20, 22, 18, 35, 48, 26, 87, 70};

float avg, sum = 0;
int i;

// Get the length of the array
int length = sizeof(ages) / sizeof(ages[0]);

// Loop through the elements of the array
for (int i = 0; i < length; i++) {
  sum += ages[i];
}

// Calculate the average by dividing the sum by the length
avg = sum / length;

// Print the average
printf("The average age is: %.2f\n", avg);

Example 2: Lowest Age Finder

Create a program that finds the lowest age among different ages:

Example Code

// An array storing different ages
int ages[] = {20, 22, 18, 35, 48, 26, 87, 70};

// Get the length of the array
int length = sizeof(ages) / sizeof(ages[0]);

// Create a variable and assign the first array element of ages to it
int lowestAge = ages[0];

// Loop through the elements of the ages array to find the lowest age
for (int i = 0; i < length; i++) {
  if (lowestAge > ages[i]) {
    lowestAge = ages[i];
  }
}

For a tutorial about arrays in C, visit our Arrays Chapter.

Strings

Example 1: Welcome Message

Use strings to create a simple welcome message:

Example Code

char message[] = "Good to see you,";
char fname[] = "John";

printf("%s %s!\n", message, fname);

Example 2: Character Count

Create a program that counts the number of characters found in a specific word:

Example Code

char word[] = "Computer";
printf("The word '%s' has %lu characters in it.\n", word, strlen(word));

For a tutorial about strings in C, visit our Strings Chapter.

User Input

Example: Getting User Name

Get the name of a user and print it:

Example Code

char fullName[30];

printf("Type your full name: \n");
fgets(fullName, sizeof(fullName), stdin);

printf("Hello %s\n", fullName);

For a tutorial about user input in C, visit our User Input Chapter.

Functions

Example: Fahrenheit to Celsius Conversion

Use a function to create a program that converts a value from Fahrenheit to Celsius:

Example Code

// Function to convert Fahrenheit to Celsius
float toCelsius(float fahrenheit) {
  return (5.0 / 9.0) * (fahrenheit - 32.0);
}

int main() {
  // Set a fahrenheit value
  float f_value = 98.8;

  // Call the function with the fahrenheit value
  float result = toCelsius(f_value);

  // Print the fahrenheit value
  printf("Fahrenheit: %.2f\n", f_value);

  // Print the result
  printf("Convert Fahrenheit to Celsius: %.2f\n", result);

  return 0;
}

For a tutorial about functions in C, visit our Functions Chapter.

Structures

Example: Car Information

Use a structure to store and output different information about cars:

Example Code

struct Car {
  char brand[50];
  char model[50];
  int year;
};

int main() {
  struct Car car1 = {"BMW", "X5", 1999};
  struct Car car2 = {"Ford", "Mustang", 1969};
  struct Car car3 = {"Toyota", "Corolla", 2011};

  printf("%s %s %d\n", car1.brand, car1.model, car1.year);
  printf("%s %s %d\n", car2.brand, car2.model, car2.year);
  printf("%s %s %d\n", car3.brand, car3.model, car3.year);

  return 0;
}

For a tutorial about structures in C, visit our Structures Chapter.

Memory Management

Example: Dynamic Memory Allocation

Use a structure to manage dynamic memory:

Example Code

struct list {
  int *data; // Points to the memory where the list items are stored
  int numItems; // Indicates how many items are currently in the list
  int size; // Indicates how many items fit in the allocated memory
};

void addToList(struct list *myList, int item);

int main() {
  struct list myList;
  int amount;

  // Create a list and start with enough space for 10 items
  myList.numItems = 0;
  myList.size = 10;
  myList.data = malloc(myList.size * sizeof(int));

  // Find out if memory allocation was successful
  if (myList.data == NULL) {
    printf("Memory allocation failed");
    return 1; // Exit the program with an error code
  }

  // Add any number of items to the list specified by the amount variable
  amount = 44;
  for (int i = 0; i < amount; i++) {
    addToList(&myList, i + 1);
  }

  // Display the contents of the list
  for (int j = 0; j < myList.numItems; j++) {
    printf("%d ", myList.data[j]);
  }

  // Free the memory when it is no longer needed
  free(myList.data);
  myList.data = NULL;

  return 0;
}

// This function adds an item to a list
void addToList(struct list *myList, int item) {
  // If the list is full then resize the memory to fit 10 more items
  if (myList->numItems == myList->size) {
    myList->size += 10;
    myList->data = realloc(myList->data, myList->size * sizeof(int));
  }

  // Add the item to the end of the list
  myList->data[myList->numItems] = item;
  myList->numItems++;
}

For a tutorial about memory management in C, visit our Memory Management Chapter.