Programs 3
Programs 3
Searching
Aim
To write a C program to search the element in a list using linear search.
Algorithm
Step1: Start the program
Step2: Read the value of n
Step3: Get n values using for loop
Step4: Get the search item
Step5: Compare the list of items with search item in sequential order. If search item is matched with
any array item then print “Element is found” and exit from the program
Step6: If search item is not matched with the array item, then print “Item is not found”
Step7: Display the result
Step8: Stop the program
Program
#include <stdio.h>
#include <conio.h>
void main()
{
int array[100], search, c, n;
clrscr();
printf("Enter the number of elements in array\n");
scanf("%d",&n);
printf("Enter %d integer(s)\n", n);
for (c = 0; c < n; c++)
{
scanf("%d", &array[c]);
}
printf("Enter the number to search\n");
scanf("%d", &search);
for (c = 0; c < n; c++)
{
if (array[c] == search)
{
printf("%d is present at location %d.\n", search, c+1);
break;
}
}
if (c == n)
printf("%d is not present in array.\n", search);
getch();
}
Output
Result
Thus the program for searching an element is verified and executed successfully.
Aim
Algorithm
Program
#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
int i,j,n;
char str[20][20],temp[20];
clrscr();
printf("\nEnter the no. of string to be sorted");
scanf("%d",&n);
printf(“\n Enter n strings:\n”);
for(i=0;i<=n;i++)
scanf(“%s”,str[i]);
for(i=0;i<=n;i++)
{
for(j=i+1;j<=n;j++)
{
if(strcmp(str[i],str[j])>0)
{
strcpy(temp,str[i]);
strcpy(str[i],str[j]);
strcpy(str[j],temp);
}
}
}
printf("The sorted string\n");
for(i=0;i<=n;i++)
printf(“%s”,str[i]);
getch();
}
Output
Enter the no. of string to be sorted:5
Enter n strings:
Balu
Vinoth
Priya
Sekar
Raju
Result
Thus the program for sorting n names in ascending order is executed and verified successfully.
Aim
To write a C program to find the factorial using recursion.
Algorithm
Program
#include <stdio.h>
#include<conio.h>
int factorial(int);
void main()
{
int n;
clrscr();
printf(“\n Enter n:”);
scanf(“%d”,&n);
printf("Factorial is %d", factorial(n));
getch();
}
int factorial(int i)
{
if(i <= 1)
{
return 1;
}
return i * factorial(i - 1);
}
Output
Enter n: 5
Factorial is 120
Result
Thus the program for finding factorial using function is executed and verified successfully.
Program
#include <stdio.h>
void swap(int, int); // function declaration
void main ()
{
int a = 100, b=200;
printf("Before swap, value of a : %d\n", a );
printf("Before swap, value of b : %d\n", b );
swap(a, b); //Function Call
printf("After swap, value of a : %d\n", a );
printf("After swap, value of b : %d\n", b );
}
void swap(int x, int y) //function definition
{
int temp;
temp = x;
x = y;
y = temp;
}
Output
Before swap, value of a :100
Before swap, value of b :200
After swap, value of a :100
After swap, value of b :200
Result
Thus the program for swapping using call by value is executed and verified successfully.
Algorithm
Step1: Start the program
Step2: Declare the function swap() with two pointers
Step3: Declare and Initialize the two variables a& b in main()
Step4: Display the value of a & b
Step5: Call the function swap() and pass the address of a & b as arguments
Step6: Address of a & b is passed to x & y in the function swap
Step7: Swap the value of x & y using temp
Step8: Display the value of a & b from main()
Step9: Stop the program
Program
#include <stdio.h>
void swap(int *, int *); // function declaration
void main ()
{
int a = 100, b=200;
printf("Before swap, value of a : %d\n", a );
printf("Before swap, value of b : %d\n", b );
swap(&a, &b); //Function Call
printf("After swap, value of a : %d\n", a );
printf("After swap, value of b : %d\n", b );
}
void swap(int *x, int *y) //function definition
{
int temp;
temp = *x;
*x = *y;
*y = temp;
}
Output
Before swap, value of a :100
Before swap, value of b :200
After swap, value of a :200
After swap, value of b :100
Result
Thus the program for swapping using call by value is executed and verified successfully.
17. Structures
Aim:
To create a program to print the mark sheet of ‘n’ student using structures
Algorithm:
Step 1: Start the program
Step 2: Create the structure student with fields name, rollno, m1,m2,m3,total.
Step 3: Create the structure variable s1[10] for the structure student.
Step 4: Read the number of students num.
Step 5: Read the value of name, rollno, marks (m1,m2,m3) for the specified number of students using
structure variable s1[i] for i= 0 to num.
Step 6: Calculate the total for each student using s1[i] for i=0 to num.
Step 7: For i=0 to num
Print the students details such as name, rollno, marks and total for all students using s1[i]
Step 8: Stop the program
Program:
#include<stdio.h>
#include<conio.h>
struct student
{
char name[10][10];
int rollno,m1,m2,m3,total;
};
void main()
{
int num,i,j;
struct student s1[10];
clrscr();
printf("enter the number of students");
scanf("%d",&num);
for(i=0;i<num;i++)
{
printf("Enter the roll number\n");
scanf("%d",&s1[i].rollno);
printf("Enter the name \n");
scanf("%s",&s1[i].name);
printf("Enter the mark1\n");
scanf("%d",&s1[i].m1);
printf("Enter the mark2\n");
scanf("%d",&s1[i].m2);
printf("Enter the mark3\n");
scanf("%d",&s1[i].m3);
s1[i].total=s1[i].m1+s1[i].m2+s1[i].m3;
}
printf("The details of the mark list is as follows \n");
printf("\n Rollno \t name "\t mark1 \t mark2 \t mark3 \t total \n");
for(i=0; i<num; i++)
{
printf("\n%d\t%s\t%d\t%d\t%d",s1[i].rollno,s1[i].name,s1[i].m1,s1[i].m2,s1[i].m3);
s1[i].total=s1[i].m1+s1[i].m2+s1[i].m3;
printf("\t%d",s1[i].total);
}
getch();
}
Output:
enter the number of stuents2
Enter the roll number
4561
Enter the name
lokesh
Enter the mark1 98
Enter the mark2 78
Enter the mark3 69
Enter the roll number
4562
Enter the name
mani
Enter the mark1 88
Enter the mark2 89
Enter the mark3 98
The details of the mark list is as follows
Result:
The program to print the mark sheet of students using structure has been executed successfully.
18. Union
Aim:
To create a “C” program to demonstrate the union.
Algorithm:
Step 1: Start the program
Step 2: Create the union Data with fields of integer variable i, float variable f and character
array variable str.
Step 3: Create the union variable data for the union Data.
Step 4: Print the size of union using sizeof() operator.
Step 5: Assign the value to variable i and f using union variable data.
Step 6: Print the value of i and f using union variable data.
Step 7: Copy the string say “C Programming” to str variable using union variable data.
Step 8: Print the string using union variable data.
Step 9: Stop the program
Program:
#include <stdio.h>
#include <string.h>
#include<conio.h>
union Data
{
int i;
float f;
char str[20];
};
int main( )
{
union Data d;
clrscr();
printf( "Memory size occupied by data : %d\n", sizeof(data));
d.i = 10;
d.f = 220.5;
strcpy( data.str, "C Programming");
printf( "%d\n%f\n%s", d.i, d.f, d.str);
return 0;
}
Output:
Memory size occupied by data : 20
data.i : 10
data.f : 220.500000
data.str : C Programming
Result:
The program to demonstrate the union has been executed successfully.