Write a program to find the sum of prime numbers with in a range C program
INPUT:
#include <stdio.h>
#include <stdbool.h>
// Function to check if a number is prime
bool isPrime(int num) {
if (num <= 1)
return false;
for (int i = 2; i * i <= num; i++) {
if (num % i == 0)
return false;
}
return true;
}
// Main function
int main() {
int lower, upper, sum = 0;
// Input the range
printf("Enter the lower limit of the range: ");
scanf("%d", &lower);
printf("Enter the upper limit of the range: ");
scanf("%d", &upper);
// Find and sum the prime numbers
for (int i = lower; i <= upper; i++) {
if (isPrime(i)) {
sum += i;
}
}
// Output the result
printf("Sum of prime numbers between %d and %d is: %d\n", lower, upper, sum);
return 0;
}
OUTPUT:
Create a program to merge two sorted arrays into one sorted array
INPUT:
#include <stdio.h>
void mergeSortedArrays(int a[], int n, int b[], int m, int result[]) {
int i = 0, j = 0, k = 0;
// Merge elements until one array is finished
while (i < n && j < m) {
if (a[i] < b[j]) {
result[k++] = a[i++];
} else {
result[k++] = b[j++];
}
}
// Copy remaining elements from array a
while (i < n) {
result[k++] = a[i++];
}
// Copy remaining elements from array b
while (j < m) {
result[k++] = b[j++];
}
}
int main() {
int a[100], b[100], result[200];
int n, m;
// Input first sorted array
printf("Enter number of elements in first sorted array: ");
scanf("%d", &n);
printf("Enter %d sorted elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
// Input second sorted array
printf("Enter number of elements in second sorted array: ");
scanf("%d", &m);
printf("Enter %d sorted elements:\n", m);
for (int i = 0; i < m; i++) {
scanf("%d", &b[i]);
}
// Merge arrays
mergeSortedArrays(a, n, b, m, result);
// Output merged sorted array
printf("Merged sorted array:\n");
for (int i = 0; i < n + m; i++) {
printf("%d ", result[i]);
}
printf("\n");
return 0;
}
OUTPUT:
Write a program to find the maximum element as an array without using the
built-in function
INPUT:
#include <stdio.h>
int main() {
int arr[100], n, max;
// Input array size
printf("Enter number of elements in the array: ");
scanf("%d", &n);
// Input array elements
printf("Enter %d elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Assume first element is the maximum
max = arr[0];
// Loop through the array to find the maximum
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
// Output the maximum element
printf("The maximum element in the array is: %d\n", max);
return 0;
}
OUTPUT:
Draw a program to find the second largest number in an array of integers
INPUT:
#include <stdio.h>
int main() {
int arr[100], n;
int first, second;
// Input size
printf("Enter number of elements in the array: ");
scanf("%d", &n);
// At least two elements required
if (n < 2) {
printf("Array must contain at least two elements.\n");
return 1;
}
// Input elements
printf("Enter %d elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Initialize first and second
first = second = -2147483648; // Minimum possible int
for (int i = 0; i < n; i++) {
if (arr[i] > first) {
second = first;
first = arr[i];
} else if (arr[i] > second && arr[i] != first) {
second = arr[i];
}
}
// Check if second largest was found
if (second == -2147483648) {
printf("There is no second largest element (all elements may be equal).\n");
} else {
printf("The second largest element is: %d\n", second);
}
return 0;
}
OUTPUT:
Create a program to find the reverse of a number using a while loop
INPUT:
#include <stdio.h>
int main() {
int num, reversed = 0, remainder;
// Input number
printf("Enter an integer: ");
scanf("%d", &num);
// Reverse the number using while loop
while (num != 0) {
remainder = num % 10; // Get last digit
reversed = reversed * 10 + remainder; // Append digit
num = num / 10; // Remove last digit
}
// Output the result
printf("Reversed number is: %d\n", reversed);
return 0;
}
OUTPUT:
Write a program to implement matrix multiplication for two 3×3 matrices
INPUT:
#include <stdio.h>
int main() {
int A[3][3], B[3][3], result[3][3];
int i, j, k;
// Input first matrix A
printf("Enter elements of first 3x3 matrix (A):\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("A[%d][%d]: ", i, j);
scanf("%d", &A[i][j]);
}
}
// Input second matrix B
printf("\nEnter elements of second 3x3 matrix (B):\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("B[%d][%d]: ", i, j);
scanf("%d", &B[i][j]);
}
}
// Initialize result matrix to 0
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
result[i][j] = 0;
}
}
// Perform matrix multiplication: result = A * B
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
for (k = 0; k < 3; k++) {
result[i][j] += A[i][k] * B[k][j];
}
}
}
// Display result matrix
printf("\nResultant Matrix (A × B):\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%5d", result[i][j]);
}
printf("\n");
}
return 0;
}
OUTPUT:
Create a program to implement binary search on a sorted array
INPUT:
#include <stdio.h>
int binarySearch(int arr[], int size, int target) {
int low = 0, high = size - 1, mid;
while (low <= high) {
mid = (low + high) / 2;
if (arr[mid] == target)
return mid; // Target found at index mid
else if (arr[mid] < target)
low = mid + 1; // Search right half
else
high = mid - 1; // Search left half
}
return -1; // Target not found
}
int main() {
int arr[100], n, target, result;
// Input size of array
printf("Enter number of elements in the sorted array: ");
scanf("%d", &n);
// Input sorted array elements
printf("Enter %d sorted elements:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Input target to search
printf("Enter the number to search: ");
scanf("%d", &target);
// Perform binary search
result = binarySearch(arr, n, target);
// Output result
if (result != -1)
printf("Element %d found at index %d (position %d).\n", target, result, result + 1);
else
printf("Element %d not found in the array.\n", target);
return 0;
}
OUTPUT:
Write a program to calculate the sum of digits of a number using a
function C language
INPUT:
#include <stdio.h>
// Function to calculate sum of digits
int sumOfDigits(int num) {
int sum = 0;
while (num != 0) {
sum += num % 10; // Get last digit and add to sum
num /= 10; // Remove last digit
}
return sum;
}
int main() {
int number;
// Input from user
printf("Enter a number: ");
scanf("%d", &number);
// Call the function and print the result
int result = sumOfDigits(number);
printf("Sum of digits: %d\n", result);
return 0;
}
OUTPUT:
Develop a program to print a floyd triangle pattern
INPUT:
#include <stdio.h>
int main() {
int rows, number = 1;
// Input number of rows
printf("Enter the number of rows: ");
scanf("%d", &rows);
// Generate Floyd's Triangle
for (int i = 1; i <= rows; i++) {
for (int j = 1; j <= i; j++) {
printf("%d ", number);
number++;
}
printf("\n"); // Move to next line after each row
}
return 0;
}
OUTPUT:
Write a program to rotate element of an array to the left by N position C
language
INPUT:
#include <stdio.h>
// Function to rotate array to the left by n positions
void rotateLeft(int arr[], int size, int n) {
n = n % size; // Handle cases when n > size
int temp[n];
// Step 1: Store first n elements in temp
for (int i = 0; i < n; i++) {
temp[i] = arr[i];
}
// Step 2: Shift remaining elements to the left
for (int i = 0; i < size - n; i++) {
arr[i] = arr[i + n];
}
// Step 3: Copy temp elements to the end
for (int i = 0; i < n; i++) {
arr[size - n + i] = temp[i];
}
}
// Function to print the array
void printArray(int arr[], int size) {
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}
// Main function
int main() {
int arr[100], size, n;
// Input array size
printf("Enter the size of the array: ");
scanf("%d", &size);
// Input array elements
printf("Enter %d elements: ", size);
for (int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// Input number of positions to rotate
printf("Enter the number of positions to rotate left: ");
scanf("%d", &n);
// Rotate and print
rotateLeft(arr, size, n);
printf("Array after left rotation: ");
printArray(arr, size);
return 0;
}
OUTPUT:
Create a program to find a common element between two arra
INPUT:
#include <stdio.h>
int main() {
int a[100], b[100], sizeA, sizeB;
int i, j, found;
// Input first array
printf("Enter size of first array: ");
scanf("%d", &sizeA);
printf("Enter %d elements for first array: ", sizeA);
for (i = 0; i < sizeA; i++) {
scanf("%d", &a[i]);
// Input second array
printf("Enter size of second array: ");
scanf("%d", &sizeB);
printf("Enter %d elements for second array: ", sizeB);
for (i = 0; i < sizeB; i++) {
scanf("%d", &b[i]);
printf("Common elements: ");
for (i = 0; i < sizeA; i++) {
for (j = 0; j < sizeB; j++) {
if (a[i] == b[j]) {
// Check if this common element was already printed
found = 0;
for (int k = 0; k < i; k++) {
if (a[k] == a[i]) {
found = 1;
break;
if (!found) {
printf("%d ", a[i]);
break;
return 0;
OUTPUT:
Write a program to check if a string is a valid palindrome without using extra
space
INPUT:
#include <stdio.h>
int main() {
char str[100];
int start = 0, end, isPalindrome = 1;
// Input string
printf("Enter a string: ");
scanf("%s", str);
// Find the length manually
for (end = 0; str[end] != '\0'; end++);
end = end - 1; // Adjust to last character index
// Compare characters from both ends
while (start < end) {
if (str[start] != str[end]) {
isPalindrome = 0;
break;
start++;
end--;
}
// Output result
if (isPalindrome) {
printf("The string is a palindrome.\n");
} else {
printf("The string is not a palindrome.\n");
return 0;
OUTPUT:
Develop a program to check if a number is Fibonacci using recursion
INPUT:
#include <stdio.h>
// Recursive function to get the nth Fibonacci number
int fibonacci(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
return fibonacci(n - 1) + fibonacci(n - 2);
}
// Function to check if a number is in the Fibonacci sequence
int isFibonacci(int num, int i) {
int fib = fibonacci(i);
if (fib == num)
return 1; // Number found in Fibonacci sequence
else if (fib > num)
return 0; // Number not found
else
return isFibonacci(num, i + 1); // Check next Fibonacci number
}
int main() {
int num;
printf("Enter a number: ");
scanf("%d", &num);
if (isFibonacci(num, 0))
printf("%d is a Fibonacci number.\n", num);
else
printf("%d is not a Fibonacci number.\n", num);
return 0;
}
OUTPUT:
Write a program to find the largest common divisor using the Euclidean
algorithm
INPUT:
#include <stdio.h>
// Recursive function to find GCD using Euclidean algorithm
int gcd(int a, int b) {
if (b == 0)
return a;
else
return gcd(b, a % b);
}
int main() {
int num1, num2;
// Input two numbers
printf("Enter two integers: ");
scanf("%d %d", &num1, &num2);
// Compute and print GCD
int result = gcd(num1, num2);
printf("Greatest Common Divisor (GCD) of %d and %d is: %d\n", num1, num2, result);
return 0;
}
OUTPUT:
Write a program to convert decimal number to binary using recursion
INPUT:
#include <stdio.h>
// Recursive function to print binary representation
void decimalToBinary(int n) {
if (n == 0)
return;
decimalToBinary(n / 2); // Recursive call
printf("%d", n % 2); // Print remainder
}
int main() {
int num;
// Input decimal number
printf("Enter a decimal number: ");
scanf("%d", &num);
if (num == 0) {
printf("Binary: 0\n");
} else {
printf("Binary: ");
decimalToBinary(num);
printf("\n");
}
return 0;
}
OUTPUT: