0% found this document useful (0 votes)
9 views

Assign1 Finupload

Uploaded by

nlakshaya2005
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Assign1 Finupload

Uploaded by

nlakshaya2005
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 21

#include <stdio.

h>

// Function to get the digit at a specified position in a number

int getDigit(int number, int position) {

return (number / position) % 10;

// Function to reverse a two-digit number

int reverseTwoDigitNumber(int number) {

return (number % 10) * 10 + (number / 10);

// Function to reverse a three-digit number

int reverseThreeDigitNumber(int number) {

return (number % 10) * 100 + ((number / 10) % 10) * 10 + (number / 100);

// Function to reverse a four-digit number

int reverseFourDigitNumber(int number) {

return (number % 10) * 1000 + ((number / 10) % 10) * 100 + ((number / 100) % 10) * 10 + (number
/ 1000);

int main() {

int choice;
printf("Choose an option:\n");

printf("107. Get ones digit of a two-digit number\n");

printf("108. Get tens digit of a two-digit number\n");

printf("109. Get ones digit of a three-digit number\n");

printf("110. Get tens digit of a three-digit number\n");

printf("111. Get hundreds digit of a three-digit number\n");

printf("112. Reverse a two-digit number\n");

printf("113. Reverse a three-digit number\n");

printf("114. Reverse a four-digit number\n");

printf("Enter your choice (107-114): ");

scanf("%d", &choice);

switch (choice) {

case 107: {

int number;

printf("Enter a two-digit number: ");

scanf("%d", &number);

int onesDigit = number % 10;

printf("Ones digit: %d\n", onesDigit);

break;

case 108: {

int number;

printf("Enter a two-digit number: ");

scanf("%d", &number);

int tensDigit = number / 10;

printf("Tens digit: %d\n", tensDigit);

break;

case 109: {

int number;
printf("Enter a three-digit number: ");

scanf("%d", &number);

int onesDigit = number % 10;

printf("Ones digit: %d\n", onesDigit);

break;

case 110: {

int number;

printf("Enter a three-digit number: ");

scanf("%d", &number);

int tensDigit = (number / 10) % 10;

printf("Tens digit: %d\n", tensDigit);

break;

case 111: {

int number;

printf("Enter a three-digit number: ");

scanf("%d", &number);

int hundredsDigit = number / 100;

printf("Hundreds digit: %d\n", hundredsDigit);

break;

case 112: {

int number;

printf("Enter a two-digit number: ");

scanf("%d", &number);

int reversedNumber = reverseTwoDigitNumber(number);

printf("Reversed number: %d\n", reversedNumber);

break;

case 113: {
int number;

printf("Enter a three-digit number: ");

scanf("%d", &number);

int reversedNumber = reverseThreeDigitNumber(number);

printf("Reversed number: %d\n", reversedNumber);

break;

case 114: {

int number;

printf("Enter a four-digit number: ");

scanf("%d", &number);

int reversedNumber = reverseFourDigitNumber(number);

printf("Reversed number: %d\n", reversedNumber);

break;

default:

printf("Invalid choice!\n");

return 0;

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

// Function to calculate the sum of digits of a two-digit number

int sumOfDigitsTwoDigit(int number) {

return (number / 10) + (number % 10);

// Function to calculate the sum of digits of a three-digit number


int sumOfDigitsThreeDigit(int number) {

return (number / 100) + ((number / 10) % 10) + (number % 10);

// Function to calculate the sum of digits of a four-digit number

int sumOfDigitsFourDigit(int number) {

return (number / 1000) + ((number / 100) % 10) + ((number / 10) % 10) + (number % 10);

// Function to reverse a number

int reverseNumber(int number) {

int reversed = 0;

while (number != 0) {

reversed = reversed * 10 + (number % 10);

number /= 10;

return reversed;

// Function to count the number of zeros in a number

int countZeros(int number) {

int count = 0;

while (number != 0) {

if (number % 10 == 0) {

count++;

number /= 10;

return count;

}
// Function to count the number of non-decreasing numbers in a range

int countNonDecreasingNumbers(int start, int end) {

int count = 0;

for (int i = start; i <= end; i++) {

int current = i;

int prevDigit = current % 10;

current /= 10;

int isNonDecreasing = 1;

while (current > 0) {

int digit = current % 10;

if (digit > prevDigit) {

isNonDecreasing = 0;

break;

prevDigit = digit;

current /= 10;

if (isNonDecreasing) {

count++;

return count;

// Function to check if a number is a palindrome

int isPalindrome(int number) {

int original = number;

int reversed = 0;

while (number > 0) {

reversed = reversed * 10 + (number % 10);

number /= 10;
}

return original == reversed;

int main() {

int choice;

printf("Choose an option:\n");

printf("115. Sum of digits of a two-digit number\n");

printf("116. Sum of digits of a three-digit number\n");

printf("117. Sum of digits of a four-digit number\n");

printf("118. Reverse a number\n");

printf("119. Count zeros in a number\n");

printf("120. Count non-decreasing numbers between 1000 and 9999\n");

printf("121. Check if a number is palindrome\n");

printf("Enter your choice (115-121): ");

scanf("%d", &choice);

switch (choice) {

case 115: {

int number;

printf("Enter a two-digit number: ");

scanf("%d", &number);

int sum = sumOfDigitsTwoDigit(number);

printf("Sum of digits: %d\n", sum);

break;

case 116: {

int number;

printf("Enter a three-digit number: ");

scanf("%d", &number);

int sum = sumOfDigitsThreeDigit(number);


printf("Sum of digits: %d\n", sum);

break;

case 117: {

int number;

printf("Enter a four-digit number: ");

scanf("%d", &number);

int sum = sumOfDigitsFourDigit(number);

printf("Sum of digits: %d\n", sum);

break;

case 118: {

int number;

printf("Enter a number to reverse: ");

scanf("%d", &number);

int reversed = reverseNumber(number);

printf("Reversed number: %d\n", reversed);

break;

case 119: {

int number;

printf("Enter a number: ");

scanf("%d", &number);

int count = countZeros(number);

printf("Number of zeros: %d\n", count);

break;

case 120: {

int count = countNonDecreasingNumbers(1000, 9999);

printf("Number of non-decreasing numbers between 1000 and 9999: %d\n", count);

break;
}

case 121: {

int number;

printf("Enter a number to check for palindrome: ");

scanf("%d", &number);

if (isPalindrome(number)) {

printf("The number is a palindrome.\n");

} else {

printf("The number is not a palindrome.\n");

break;

default:

printf("Invalid choice!\n");

return 0;

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

// Function to print ASCII value of a character

void printAsciiValue(char character) {

printf("ASCII value of '%c' is %d\n", character, character);

// Function to convert string to integer

int stringToInteger(const char *str) {

return atoi(str);

}
// Function to convert integer to string

void integerToString(int number) {

char str[50];

sprintf(str, "%d", number);

printf("String: %s\n", str);

// Function to print each digit of a number as character

void printDigitsAsCharacters(int number) {

while (number > 0) {

printf("%c\n", (char)((number % 10) + '0'));

number /= 10;

// Function to find the length of a string

int stringLength(const char *str) {

return strlen(str);

// Function to validate a string as a number

int validateNumber(const char *str) {

int isValid = 1;

for (int i = 0; i < strlen(str); i++) {

if (str[i] < '0' || str[i] > '9') {

isValid = 0;

break;

return isValid;
}

// Function to remove leading zeros from a number string

void removeLeadingZeros(char *str) {

int i = 0;

while (str[i] == '0') {

i++;

if (i > 0) {

strcpy(str, &str[i]);

// Function to reverse a string

void reverseString(char *str) {

int left = 0;

int right = strlen(str) - 1;

while (left < right) {

char temp = str[left];

str[left] = str[right];

str[right] = temp;

left++;

right--;

// Function to multiply two numbers (up to 50 digits each)

void multiplyLargeNumbers(const char *num1, const char *num2) {

int n1 = strlen(num1);

int n2 = strlen(num2);

int result[n1 + n2];


memset(result, 0, sizeof(result));

for (int i = n1 - 1; i >= 0; i--) {

for (int j = n2 - 1; j >= 0; j--) {

int digit1 = num1[i] - '0';

int digit2 = num2[j] - '0';

int sum = digit1 * digit2 + result[i + j + 1];

result[i + j] += sum / 10;

result[i + j + 1] = sum % 10;

// Convert result array to string

char finalResult[n1 + n2 + 1];

int index = 0;

int i = 0;

while (result[i] == 0 && i < n1 + n2) {

i++; // Skip leading zeros

while (i < n1 + n2) {

finalResult[index++] = result[i++] + '0';

finalResult[index] = '\0';

printf("Product: %s\n", finalResult);

// Function to convert integer array to character array and print using printf

void convertIntArrayToCharArray(int *arr, int size) {

char charArray[size + 1];

for (int i = 0; i < size; i++) {


charArray[i] = arr[i] + '0';

charArray[size] = '\0';

printf("%s\n", charArray);

// Function to add two integer arrays (up to 50 digits each)

void addLargeNumbers(int *num1, int *num2, int size1, int size2) {

int maxSize = size1 > size2 ? size1 : size2;

int result[maxSize + 1];

memset(result, 0, sizeof(result));

for (int i = 0; i < maxSize; i++) {

int sum = result[i];

if (i < size1) {

sum += num1[size1 - 1 - i];

if (i < size2) {

sum += num2[size2 - 1 - i];

result[i] = sum % 10;

result[i + 1] = sum / 10;

// Convert result array to character array and print

printf("Sum: ");

convertIntArrayToCharArray(result, maxSize + 1);

int main() {

int choice;
printf("Choose an option:\n");

printf("131. Print each digit of a number as character\n");

printf("132. Convert integer array to character array and print using printf\n");

printf("133. Add two integer arrays of up to 50 digits\n");

printf("134. Adjust the carry in an integer array\n");

printf("135. Convert an integer array of up to 50 digits to character array and print using printf\n");

printf("136. Get two numbers of up to 50 digits and perform addition\n");

printf("137. Get a string and find positions of a character\n");

printf("138. Get a main string and sub string, find position of sub string in main string\n");

printf("139. Get a string using gets function and count all words in it\n");

printf("140-147. Structure related operations\n");

printf("Enter your choice (131-147): ");

scanf("%d", &choice);

switch (choice) {

case 131: {

int number;

printf("Enter a number to print each digit as character: ");

scanf("%d", &number);

printDigitsAsCharacters(number);

break;

case 132: {

int arr[] = {6, 12, 3, 15, 7};

int size = sizeof(arr) / sizeof(arr[0]);

convertIntArrayToCharArray(arr, size);

break;

case 133: {

int num1[] = {3, 4, 5, 6, 7, 2, 3, 4, 5};

int num2[] = {9, 8, 7, 6, 6, 5, 4, 3};


int size1 = sizeof(num1) / sizeof(num1[0]);

int size2 = sizeof(num2) / sizeof(num2[0]);

addLargeNumbers(num1, num2, size1, size2);

break;

case 134: {

int arr[] = {6, 12, 3, 15, 7};

int size = sizeof(arr) / sizeof(arr[0]);

for (int i = 0; i < size - 1; i++) {

if (arr[i] >= 10) {

arr[i + 1] += arr[i] / 10;

arr[i] %= 10;

convertIntArrayToCharArray(arr, size);

break;

case 135: {

int arr[] = {1, 4, 5, 8, 7, 6, 3};

int size = sizeof(arr) / sizeof(arr[0]);

convertIntArrayToCharArray(arr, size);

break;

case 136: {

char num1[51], num2[51];

printf("Enter the first number (up to 50 digits): ");

scanf("%s", num1);

printf("Enter the second number (up to 50 digits): ");

scanf("%s", num2);

addLargeNumbers(num1, num2);

break;
}

case 137: {

char mainString[100], character;

int positions[100];

int count = 0;

printf("Enter a string: ");

scanf("%s", mainString);

printf("Enter a character to find: ");

scanf(" %c", &character);

printf("Positions of '%c' in string: ", character);

for (int i = 0; i < strlen(mainString); i++) {

if (mainString[i] == character) {

positions[count++] = i + 1;

for (int i = 0; i < count; i++) {

printf("%d%s", positions[i], i == count - 1 ? "\n" : ", ");

break;

case 138: {

char mainString[100], subString[100];

printf("Enter a main string: ");

scanf("%s", mainString);

printf("Enter a sub string to find: ");

scanf("%s", subString);

char *pos = strstr(mainString, subString);

if (pos) {

printf("Position of sub string in main string: %ld\n", pos - mainString + 1);


} else {

printf("Sub string not found in main string.\n");

break;

case 139: {

char inputString[100];

printf("Enter a string: ");

scanf(" %[^\n]", inputString);

int wordCount = 0;

char *token = strtok(inputString, " ");

while (token != NULL) {

wordCount++;

token = strtok(NULL, " ");

printf("Number of words in the string: %d\n", wordCount);

break;

default:

printf("Invalid choice!\n");

return 0;

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

// Function to count words in a string using strtok

int countWords(const char *str) {


int wordCount = 0;

char *token = strtok((char *)str, " ");

while (token != NULL) {

wordCount++;

token = strtok(NULL, " ");

return wordCount;

// Function to multiply two large numbers (up to 50 digits each)

void multiplyLargeNumbers(const char *num1, const char *num2) {

char result[102]; // To accommodate maximum product length

int len1 = strlen(num1);

int len2 = strlen(num2);

// Initialize result array with zero

for (int i = 0; i < len1 + len2; i++) {

result[i] = '0';

result[len1 + len2] = '\0';

// Multiply each digit and store the result in reverse order

for (int i = len1 - 1; i >= 0; i--) {

int carry = 0;

for (int j = len2 - 1; j >= 0; j--) {

int product = (num1[i] - '0') * (num2[j] - '0') + (result[i + j + 1] - '0') + carry;

carry = product / 10;

result[i + j + 1] = (product % 10) + '0';

result[i] = carry + '0';


}

// Remove leading zeros from result

int i = 0;

while (result[i] == '0') {

i++;

// Print the final result

printf("Product: %s\n", result + i);

int main() {

int choice;

printf("Choose an option:\n");

printf("139. Write a program to get a string using gets function and count all the words in it\n");

printf("140. Create a link list for the following structure and get user inputs of id, Maths mark,
Science Mark\n");

printf("141. Create a sample link list and insert a new entry before or after a given id\n");

printf("142. Create a doubly linked list and perform insert and delete operations\n");

printf("143. Create a program to implement a stack using linked list with push, pop, and display
operations\n");

printf("144. Create a program to implement a queue using linked list with add, remove, and
display operations\n");

printf("145. Create a program to print the ASCII value of a character\n");

printf("146. Create a program to convert a string to an integer\n");

printf("147. Create a program to convert an integer to a string\n");

printf("Enter your choice (139-147): ");

scanf("%d", &choice);

switch (choice) {

case 139: {
char inputString[100];

printf("Enter a string: ");

getchar(); // Clear input buffer

gets(inputString);

int wordCount = countWords(inputString);

printf("Number of words in the string: %d\n", wordCount);

break;

case 140:

// Code for creating a linked list and inputting data (not provided here)

break;

case 141:

// Code for creating a sample linked list and performing insert operations (not provided here)

break;

case 142:

// Code for creating a doubly linked list and performing insert/delete operations (not provided
here)

break;

case 143:

// Code for implementing a stack using linked list (not provided here)

break;

case 144:

// Code for implementing a queue using linked list (not provided here)

break;

case 145: {

char character;

printf("Enter a character: ");

scanf(" %c", &character);

printf("ASCII value of '%c' is %d\n", character, character);

break;
}

case 146: {

char str[50];

printf("Enter a string to convert to integer: ");

scanf("%s", str);

int number = atoi(str);

printf("Integer value: %d\n", number);

break;

case 147: {

int number;

printf("Enter an integer to convert to string: ");

scanf("%d", &number);

char str[50];

sprintf(str, "%d", number);

printf("String: %s\n", str);

break;

default:

printf("Invalid choice!\n");

return 0;

You might also like