KCS151/KCS251 PPS Lab Exercise Program: 26

KCS151P/KCS251P

LAB 1
LAB 2
LAB 3
LAB 4
LAB 5
LAB 6

Write a program to evaluate the addition of diagonal elements of two square matrixes.

Write a program to find the transpose of a given matrix & check whether it is symmetric or not.

Write a program to print the multiplication of two N*N (Square) matrix.

LAB 7

Write a program in C to check whether the given string is a palindrome or not.

Write a program to sort the array of characters (String) in alphabetical order like STRING in GINRST.

Write a program to remove all the blank space from the string & print it, also count the no of characters.

Write a program to store the following string “zero”, “one”, … “five”.
Print the no in words, given in figure as 3205.

LAB 8

Write a program to compare two given dates. To store a date uses a structure that contains three members namely day, month, and year. If the dates are equal then display message equal otherwise unequal.

Define a structure that can describe a hotel. It should have the member that includes the name, address, grade, room charge, and the number of rooms.
Write a function to print out the hotel of given grade in order of room charges.

Define a structure called cricket with player name, team name, batting average, for 55 players & 5 teams. Print team-wise list contains names of players with their batting average.

LAB 9

Write a C program to copy & count the character content of one file, says a.txt to another file b.txt.

Write a program to take 10 integers from a file and write the square of these integers in another file.

Write a program to read numbers from a file and then write all ‘odd’ numbers to file ODD.txt & all ‘even’ to file EVEN.txt.

Write a program to print all the prime numbers, between 1 to 100 in file prime.txt.

Write the following C program using pointer:
a) To sort the list of numbers through the pointer.
b) To reverse the string through the pointer.

LAB 10

Write a program to find the largest no among 20 integers array using dynamic memory allocation.

Using Dynamic Memory Allocation, Write a program to find the transpose of the given matrix.

Write a program to find the factorial of the given number using the command line argument.

Write a program to find the sum of digits of a 5 digit number using the command line argument.

26. Write a program to merge two sorted array & no element is repeated during merging.

				
					/*
 File: Prgrm26.c
 Author: Aditya Saini
 Date: Jan 17, 2021
 Description: Program to merge two sorted arrays & no element is repeated during merging.
*/

#include <stdio.h>

int main (void)
{
    int ar_1[10], ar_2[10];
    int merge_ar[20];
    int i, j, k;
    
    //Input first array.
    printf ("***Input first sorted array***\n");
    i = 0;
    while (i <= 9)
    {
        printf ("Input %d element: ", i + 1);
        scanf ("%d", &ar_1[i]);
        
        if (i > 0 && ar_1[i] <= ar_1[i - 1])
        {
            printf ("Error! %d is smaller than or equal to previous element. Try again.\n", ar_1[i]);
            continue;
        }
        i++;
    }
    
    //Input second array.
    printf ("\n***Input second sorted array***\n");
    i = 0;
    while (i <= 9)
    {
        printf ("Input %d element: ", i + 1);
        scanf ("%d", &ar_2[i]);
        
        if (i > 0 && ar_2[i] <= ar_2[i - 1])
        {
            printf ("Error! %d is smaller than or equal to previous element. Try again.\n", ar_2[i]);
            continue;
        }
        i++;
    }
    
    //Print first array
    printf ("\nFirst Array: ");
    for (i = 0; i <= 9; i++)
        printf ("%d ", ar_1[i]);
    printf ("\n");
    
    //Print second array
    printf ("Second Array: ");
    for (i = 0; i <= 9; i++)
        printf ("%d ", ar_2[i]);
    printf ("\n");
    
    //Merge arrays
    i = 0;
    j = 0;
    k = 0;
    while (i <= 9 && j <= 9)
    {
        if (ar_1[i] <= ar_2[j])
        {
            if (k == 0 || merge_ar[k - 1] < ar_1[i])
            {
                merge_ar[k] = ar_1[i];
                k++;
            }
            i++;
        }
        else
        {
            if (k == 0 || merge_ar[k - 1] < ar_2[j])
            {
                merge_ar[k] = ar_2[j];
                k++;
            }
            j++;
        }
    }
    if (i < j)
    {
        while (i <= 9)
        {
            merge_ar[k] = ar_1[i];
            i++;
            k++;
        }
    }
    else
    {
        while (j <= 9)
        {
            merge_ar[k] = ar_2[j];
            j++;
            k++;
        }
    }
    
    //Print Merge array
    printf ("Merge Array: ");
    for (i = 0; i <= k - 1; i++)
        printf ("%d ", merge_ar[i]);
    
    return 0;
};
				
			

Try it yourself

Sample Input and Output

Stdin Inputs:

5 7 3 9 15 17 19 20 23 25 27 3 5 9 12 15 17 18 27 30 35

Sample Result:

***Input first sorted array***
Input 1 element: 5
Input 2 element: 7
Input 3 element: 3
Error! 3 is smaller than or equal to previous element. Try again.
Input 3 element: 9
Input 4 element: 15
Input 5 element: 17
Input 6 element: 19
Input 7 element: 20
Input 8 element: 23
Input 9 element: 25
Input 10 element: 27

***Input second sorted array***
Input 1 element: 3
Input 2 element: 5
Input 3 element: 9
Input 4 element: 12
Input 5 element: 15
Input 6 element: 17
Input 7 element: 18
Input 8 element: 27
Input 9 element: 30
Input 10 element: 35

First Array: 5 7 9 15 17 19 20 23 25 27
Second Array: 3 5 9 12 15 17 18 27 30 35
Merge Array: 3 5 7 9 12 15 17 18 19 20 23 25 27 27 30 35

Aditya Saini

Please Share:
Facebook
Twitter
WhatsApp
Telegram
LinkedIn
Pinterest
Reddit
Tumblr
Email
Print

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top
Scroll to Top