C programs are frequently asked questions in interviews. These programs can range from basics, arrays, strings, pointers, linked lists, file handling, etc. Let’s take a look at the list of C programs.
1) Fibonacci Sequence
Without Recursion:
#include <stdio.h>
void printFibonacci(int n) { int a = 0, b = 1, nextTerm;
for (int i = 1; i <= n; i++) { printf("%d ", a); nextTerm = a + b; a = b; b = nextTerm; }}
int main() { int n; printf("Please enter the number of terms: "); scanf("%d", &n); printFibonacci(n);
return 0;}
With Recursion:
#include <stdio.h>
int fibonacci(int n) { if (n <= 1) return n; return fibonacci(n - 1) + fibonacci(n - 2);}
void printFibonacci(int n) { for (int i = 0; i < n; i++) { printf("%d ", fibonacci(i)); }}
int main() { int n; printf("Please enter the number of terms: "); scanf("%d", &n); printFibonacci(n);
return 0;}
👇Click to receive👇
👉C Language Knowledge Material Collection
2) Prime Number
#include <stdio.h>
int isPrime(int num) { if (num <= 1) return 0;
for (int i = 2; i * i <= num; i++) { if (num % i == 0) return 0; } return 1;}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
if (isPrime(num)) printf("%d is a prime number\n", num); else printf("%d is not a prime number\n", num);
return 0;}
3) Palindrome Number
#include <stdio.h>
int isPalindrome(int num) { int reverse = 0, temp = num;
while (temp != 0) { reverse = reverse * 10 + temp % 10; temp /= 10; }
return reverse == num;}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
if (isPalindrome(num)) printf("%d is a palindrome number\n", num); else printf("%d is not a palindrome number\n", num);
return 0;}
4) Factorial
#include <stdio.h>
int factorial(int n) { if (n == 0) return 1; else return n * factorial(n - 1);}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
printf("Factorial result is: %d\n", factorial(num));
return 0;}
5) Armstrong Number
#include <stdio.h>#include <math.h>
int isArmstrong(int num) { int sum = 0, temp = num, digits = 0;
while (temp != 0) { temp /= 10; digits++; }
temp = num; while (temp != 0) { int digit = temp % 10; sum += pow(digit, digits); temp /= 10; }
return sum == num;}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
if (isArmstrong(num)) printf("%d is an Armstrong number\n", num); else printf("%d is not an Armstrong number\n", num);
return 0;}
6) Sum of Digits
#include <stdio.h>
int sumOfDigits(int num) { int sum = 0;
while (num != 0) { sum += num % 10; num /= 10; }
return sum;}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
printf("Sum of digits is: %d\n", sumOfDigits(num));
return 0;}
7) Reverse Number
#include <stdio.h>
int reverseNumber(int num) { int reversed = 0;
while (num != 0) { reversed = reversed * 10 + num % 10; num /= 10; }
return reversed;}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
printf("Reversed number is: %d\n", reverseNumber(num));
return 0;}
8) Swap Two Numbers Without Using a Third Variable
#include <stdio.h>
int main() { int a, b; printf("Please enter two integers: "); scanf("%d %d", &a, &b);
printf("Before swap: a = %d, b = %d\n", a, b);
a = a + b; b = a - b; a = a - b;
printf("After swap: a = %d, b = %d\n", a, b);
return 0;}
9) Print “hello” Without Using a Semicolon
#include <stdio.h>
int main() { if (printf("hello")) {}
return 0;}
10) Add Two Numbers Using Assembly Code
#include <stdio.h>
int main() { int a, b, sum;
printf("Please enter two integers: "); scanf("%d %d", &a, &b);
asm volatile("addl %1, %0" : "=r"(sum) : "r"(a), "0"(b));
printf("The result of adding two numbers is: %d\n", sum);
return 0;}
11) Print “Hello” Without Using main() Function
#define decode(s,t,u,m,p,e,d) m##s##u##t#define begin decode(a,n,i,m,a,t,e)
#include <stdio.h>
begin() { printf("Hello\n"); return 0;}
12) Matrix Multiplication
#include <stdio.h>
void matrixMultiplication(int A[][3], int B[][3], int C[][3]) { for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { C[i][j] = 0; for (int k = 0; k < 3; k++) { C[i][j] += A[i][k] * B[k][j]; } } }}
void displayMatrix(int matrix[][3]) { for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%d ", matrix[i][j]); } printf("\n"); }}
int main() { int A[3][3] = {{1, 1, 1}, {2, 2, 2}, {3, 3, 3}}; int B[3][3] = {{1, 1, 1}, {2, 2, 2}, {3, 3, 3}}; int C[3][3];
printf("First matrix elements:\n"); displayMatrix(A); printf("Second matrix elements:\n"); displayMatrix(B);
matrixMultiplication(A, B, C);
printf("Product of the two matrices:\n"); displayMatrix(C);
return 0;}
13) Decimal to Binary Conversion
#include <stdio.h>
void decimalToBinary(int num) { if (num == 0) return; decimalToBinary(num / 2); printf("%d", num % 2);}
int main() { int num; printf("Please enter a decimal number: "); scanf("%d", &num);
printf("Binary representation is: "); decimalToBinary(num); printf("\n");
return 0;}
14) Alphabet Triangle
#include <stdio.h>
int main() { int n, k = 0; printf("Please enter the number of rows: "); scanf("%d", &n);
for (int i = 1; i <= n; i++, k = 0) { for (int space = 1; space <= n - i; space++) { printf(" "); } while (k != 2 * i - 1) { printf("%c", 64 + i + k); k++; } printf("\n"); }
return 0;}
15) Number Triangle
#include <stdio.h>
int main() { int i, j, space, rows;
printf("Please enter the range: "); scanf("%d", &rows);
for (i = 1; i <= rows; i++) { for (space = 1; space <= rows - i; space++) printf(" "); for (j = 1; j <= i; j++) printf("%d", j); for (j = i - 1; j >= 1; j--) printf("%d", j); printf("\n"); }
return 0;}
16) Fibonacci Triangle
#include <stdio.h>
int fibonacci(int n) { if (n <= 1) return n; return fibonacci(n - 1) + fibonacci(n - 2);}
int main() { int n; printf("Please enter the range: "); scanf("%d", &n);
for (int i = 0; i < n; i++) { for (int j = 0; j <= i; j++) { printf("%d ", fibonacci(j)); } printf("\n"); }
return 0;}
17) Convert Number to Words
#include <stdio.h>
void printInWords(int num) { char* words[] = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
if (num == 0) { printf("%s ", words[0]); return; }
int digit = num % 10; printInWords(num / 10); printf("%s ", words[digit]);}
int main() { int num; printf("Please enter an integer: "); scanf("%d", &num);
printf("Number in words: "); printInWords(num); printf("\n");
return 0;}
Recommended Hot Topics
-
C Language Tutorial – Detailed Guide to Sum of Digits in C Language
-
C Language Algorithm – “Wildcard Matching” Algorithm Problem
-
C++ Tutorial – Keywords in C++ Language