30 Beginner C Programming Exercises With Solutions
30 Beginner C Programming Exercises With Solutions
1. Hello World
Print "Hello, World!" to the console.
#include <stdio.h>
int main() {
printf("Hello, World!\n");
return 0;
}
#include <stdio.h>
int main() {
int num1, num2;
printf("Enter two numbers: ");
scanf("%d %d", &num1, &num2);
#include <stdio.h>
int main() {
int num;
printf("Enter a number: ");
scanf("%d", &num);
if (num % 2 == 0)
printf("%d is even.\n", num);
else
printf("%d is odd.\n", num);
return 0;
}
#include <stdio.h>
int main() {
int a, b, c, max;
printf("Enter three numbers: ");
scanf("%d %d %d", &a, &b, &c);
max = a;
if (b > max) max = b;
if (c > max) max = c;
#include <stdio.h>
int main() {
int num, i, isPrime = 1;
printf("Enter a positive number: ");
scanf("%d", &num);
if (isPrime)
printf("%d is a prime number.\n", num);
else
printf("%d is not a prime number.\n", num);
return 0;
}
6. Factorial Calculation
Calculate the factorial of a number.
c
#include <stdio.h>
int main() {
int num, i;
unsigned long long fact = 1;
if (num < 0)
printf("Factorial is not defined for negative numbers.\n");
else {
for (i = 1; i <= num; i++)
fact *= i;
printf("Factorial of %d = %llu\n", num, fact);
}
return 0;
}
7. Fibonacci Series
Print Fibonacci series up to n terms.
#include <stdio.h>
int main() {
int n, i, t1 = 0, t2 = 1, nextTerm;
8. Reverse a Number
Reverse the digits of a number.
#include <stdio.h>
int main() {
int num, reversed = 0, remainder;
while (num != 0) {
remainder = num % 10;
reversed = reversed * 10 + remainder;
num /= 10;
}
#include <stdio.h>
int main() {
int num, originalNum, reversed = 0, remainder;
originalNum = num;
while (num != 0) {
remainder = num % 10;
reversed = reversed * 10 + remainder;
num /= 10;
}
if (originalNum == reversed)
printf("%d is a palindrome.\n", originalNum);
else
printf("%d is not a palindrome.\n", originalNum);
return 0;
}
#include <stdio.h>
int main() {
int num, sum = 0, digit;
while (num != 0) {
digit = num % 10;
sum += digit;
num /= 10;
}
#include <stdio.h>
int main() {
int num, i;
#include <stdio.h>
int main() {
int base, exponent;
long long result = 1;
#include <stdio.h>
#include <math.h>
int main() {
int num, originalNum, remainder, n = 0;
double result = 0.0;
originalNum = num;
originalNum = num;
if ((int)result == num)
printf("%d is an Armstrong number.\n", num);
else
printf("%d is not an Armstrong number.\n", num);
return 0;
}
#include <stdio.h>
int main() {
int n1, n2, gcd, i;
#include <stdio.h>
int main() {
int n1, n2, max;
while (1) {
if (max % n1 == 0 && max % n2 == 0) {
printf("LCM of %d and %d is %d\n", n1, n2, max);
break;
}
++max;
}
return 0;
}
16. Sum of Natural Numbers
Calculate the sum of first n natural numbers.
#include <stdio.h>
int main() {
int n, sum = 0;
#include <stdio.h>
int main() {
int year;
#include <stdio.h>
int main() {
char c;
#include <stdio.h>
#include <ctype.h>
int main() {
char line[100];
int vowels = 0, consonants = 0;
#include <stdio.h>
int main() {
int rows, i, j, space;
printf("\n");
}
return 0;
}
#include <stdio.h>
int main() {
int a, b;
a = a + b;
b = a - b;
a = a - b;
#include <stdio.h>
#define PI 3.14159
int main() {
float radius, area;
#include <stdio.h>
int main() {
char operator;
double n1, n2, result;
switch(operator) {
case '+': result = n1 + n2; break;
case '-': result = n1 - n2; break;
case '*': result = n1 * n2; break;
case '/':
if (n2 != 0) result = n1 / n2;
else { printf("Error! Division by zero.\n"); return 1; }
break;
default: printf("Error! Invalid operator.\n"); return 1;
}
#include <stdio.h>
#include <ctype.h>
int main() {
char ch;
ch = tolower(ch);
#include <stdio.h>
int main() {
int arr[10], n, i, searchElement, found = 0;
if (!found)
printf("Element not found in the array\n");
return 0;
}
#include <stdio.h>
int main() {
int n, i;
float arr[10], sum = 0.0, average;
average = sum / n;
printf("Average of array elements: %.2f\n", average);
return 0;
}
#include <stdio.h>
int main() {
char str[100], ch;
int count = 0;
#include <stdio.h>
int main() {
int arr[10], n, i, max;
max = arr[0];
for (i = 1; i < n; i++) {
if (arr[i] > max)
max = arr[i];
}
#include <stdio.h>
#include <math.h>
int main() {
long long binary;
int decimal = 0, i = 0, remainder;
while (binary != 0) {
remainder = binary % 10;
binary /= 10;
decimal += remainder * pow(2, i);
++i;
}
#include <stdio.h>
int main() {
int arr[10], n, i, j, temp;
// Bubble sort
for (i = 0; i < n-1; i++) {
for (j = 0; j < n-i-1; j++) {
if (arr[j] > arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}