Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
163 views35 pages

Lab Manual PPSC

lab manual ppsc,c

Uploaded by

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

Lab Manual PPSC

lab manual ppsc,c

Uploaded by

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

JNTUK R20 B.

Tech I - I Sem1

PPSC LAB MANUAL


Week 1
1.Write a C program to print a block F using hash (#), where the F has a height of six
characters and width of five and four characters.
#include <stdio.h>
int main()
{
printf("######\n");
printf("#\n");
printf("#\n");
printf("#####\n");
printf("#\n");
printf("#\n");
printf("#\n");
return(0);
}
Output:
#####
#
#
#####
#
#
#

2. Write a C program to compute the perimeter and area of a rectangle with a height
of 7 inches. and width of 5 inches
Program:
#include <stdio.h>
/* height and width of a rectangle in inches */
int width;
int height;
int area;
int perimeter;
int main()
{
height = 7;
width = 5;
perimeter = 2*(height + width);
printf("Perimeter of the rectangle = %d inches\n", perimeter);
area = height * width;
printf("Area of the rectangle = %d square inches\n", area); 2
return(0);
}
Output:
Perimeter of the rectangle = 24 inches
Area of the rectangle = 35 square inches

3.Write a C program to display following variables.


program:
#include <stdio.h>
int main()
{
int a = 125, b = 12345;
long ax = 1234567890;
short s = 4043;
float x = 2.13459;
double dx = 1.1415927;
char c = 'W';
unsigned long ux = 2541567890;
printf("a + c = %d\n", a + c);
printf("x + c = %f\n", x + c);
printf("dx + x = %f\n", dx + x);
printf("((int) dx) + ax = %ld\n", ((int) dx) + ax);
printf("a + x = %f\n", a + x);
printf("s + b = %d\n", s + b);
printf("ax + b = %ld\n", ax + b);
printf("s + c = %hd\n", s + c);
printf("ax + c = %ld\n", ax + c);
printf("ax + ux = %lu\n", ax + ux);
return 0;
}
Output:
a + c = 212
x + c = 89.134590
dx + x = 3.276183
((int) dx) + ax = 1234567891
a + x = 127.134590
s + b = 16388
ax + b = 1234580235
s + c = 4130
ax + c = 1234567977
ax + ux = 3776135780
----------------------------------------------------------------------------------------------------
Week 2 3
1.Write a C program to calculate the distance between the two points.
Note: x1, y1, x2, y2 are all double values.

#include <stdio.h>
#include <math.h>

int main() {
float x1, y1, x2, y2, gdistance;
printf("Input x1: ");
scanf("%f", &x1);
printf("Input y1: ");
scanf("%f", &y1);
printf("Input x2: ");
scanf("%f", &x2);
printf("Input y2: ");
scanf("%f", &y2);
gdistance = ((x2-x1)*(x2-x1))+((y2-y1)*(y2-y1));
printf("Distance between the said points: %.4f", sqrt(gdistance));
printf("\n");
return 0;
}

Output:
Input x1: 25
Input y1: 15
Input x2: 35
Input y2: 10
Distance between the said points: 11.1803

2. Write a C program that accepts 4 integers p, q, r, s from the user where q, r and s
are positive and p is even. If q is greater than r and s is greater than p and if the sum
of r and s is greater than the sum of p and q print "Correct values", otherwise print
"Wrong values".
program:
#include <stdio.h>
int main()
{
int p, q, r, s;
printf("\nInput the first integer: ");
scanf("%d", &p);
4
printf("\nInput the second integer: ");
scanf("%d", &q);
printf("\nInput the third integer: ");
scanf("%d", &r);
printf("\nInput the fourth integer: ");
scanf("%d", &s);

if((q > r) && (s > p) && ((r+s) > (p+q)) && (r > 0) && (s > 0) && (p%2 == 0))
{
printf("\nCorrect values\n");
}
else {
printf("\nWrong values\n");
}
return 0;
}
Output:
Input the first integer: 25

Input the second integer: 35

Input the third integer: 15

Input the fourth integer: 46

Wrong values
-------------------------------------------------------------------------------------------------
Week 3
1.Write a C program to convert a string to a long integer.
#include<stdio.h>
#include<stdlib.h>
int main ()
{
char buffer[] = "2016 40a0b0 -1101110100110111100110 0x5abfff";
char * ptr_end;
long int i1, i2, i3, i4;

i1 = strtol (buffer,&ptr_end,10);
i2 = strtol (ptr_end,&ptr_end,16);
i3 = strtol (ptr_end,&ptr_end,2);
i4 = strtol (ptr_end,NULL,0);
printf ("\nIn decimals: %ld, %ld, %ld, %ld.\n\n", i1, i2, i3, i4);
return 0; 5
}

Output: In decimals: 2016, 4235440, -3624422, 5947391.

2. Write a program in C which is a Menu-Driven Program to compute the area of the


various geometrical shape.
program:
#include <stdio.h>
void main ()
{
int choice,r,l,w,b,h;
float area;
printf("Input 1 for area of circle\n");
printf("Input 2 for area of rectangle\n");
printf("Input 3 for area of triangle\n");
printf("Input your choice : ");
scanf("%d",&choice);
switch(choice)
{
case 1:
printf("Input radious of the circle : ");
scanf("%d",&r);
area=3.14*r*r;
break;
case 2:
printf("Input length and width of the rectangle : ");
scanf("%d%d",&l,&w);
area=l*w;
break;
case 3:
printf("Input the base and hight of the triangle :");
scanf("%d%d",&b,&h);
area=.5*b*h;
break;
}
printf("The area is : %f\n",area);
}
Output:
Input 1 for area of circle
Input 2 for area of rectangle
Input 3 for area of triangle
Input your choice : 1
Input radious of the circle : 5 6
The area is : 78.500000

3.Write a c program to calculate the factorial of a given number


program:
#include <stdio.h>
int main()
{
int num,i;
long int fact;

printf("Enter an integer number: ");


scanf("%d",&num);

/*product of numbers from num to 1*/


fact=1;
for(i=num; i>=1; i--)
fact=fact*i;

printf("\nFactorial of %d is = %ld",num,fact);

return 0;
}
Output:
Enter an integer number: 7

Factorial of 7 is = 5040
-------------------------------------------------------------------------------------------------
Week 4
1.Write a program in C to display the n terms of even natural number and their sum
#include <stdio.h>
void main()
{
int i,n,sum=0;

printf("Input number of terms : ");


scanf("%d",&n);
printf("\nThe even numbers are :");
for(i=1;i<=n;i++)
{
printf("%d ",2*i);
sum+=2*i;
}
printf("\nThe Sum of even Natural Number upto %d terms : %d \n",n,sum); 7
}

Output:
Input number of terms : 5

The even numbers are :2 4 6 8 10


The Sum of even Natural Number upto 5 terms : 30

2. Write a program in C to display the n terms of harmonic series and their sum. The
series is : 1 + 1/2 + 1/3 + 1/4 + 1/5 ... 1/n terms
#include <stdio.h>
void main()
{
int i,n;
float s=0.0;
printf("Input the number of terms : ");
scanf("%d",&n);
printf("\n\n");
for(i=1;i<=n;i++)
{
if(i<n)
{
printf("1/%d + ",i);
s+=1/(float)i;
}
if(i==n)
{
printf("1/%d ",i);
s+=1/(float)i;
}
}
printf("\nSum of Series upto %d terms : %f \n",n,s);
}
Output:
Input the number of terms : 5

1/1 + 1/2 + 1/3 + 1/4 + 1/5


Sum of Series upto 5 terms : 2.283334

3. write a program in c to check a no is armstrong or not.


#include <stdio.h>
#include <math.h>
void main() 8
{

int number, sum = 0, rem = 0, cube = 0, temp;


printf ("enter a number");
scanf("%d", &number);
temp = number;
while (number != 0)
{
rem = number % 10;
cube = pow(rem, 3);
sum = sum + cube;
number = number / 10;
}
if (sum == temp)
printf ("The given no is armstrong no");
else
printf ("The given no is not a armstrong no");
}
Output:
Enter a number:153
The given num is Armstrong num.
---------------------------------------------------------------------------------------------------
Week 5
1. Write a program in C to print all unique elements in an array.
#include <stdio.h>
void main()
{
int arr[5],i;
clrscr();
printf(“enter the array elements”);
for(i=0;i<5;i++)
{
scanf(“%d”,&arr[i]);
}
printf(“the invidual array elements are:\n”);
for(i=0;i<5;i++)
{
printf(“arr[%d]=%d\n”,i,arr[i]);
}
getch();
}
Output: 9
Enter the array elements:
3
4

5
6
7
The individual array elements are :
Arr[0]=3
Arr[1]=4
Arr[2]=5
Arr[3]=6
Arr[4]=7

2. Write a program in C to separate odd and even integers in separate arrays.


#include <stdio.h>
void main()
{
int arr1[10], arr2[10], arr3[10];
int i,j=0,k=0,n;

printf("\n\nSeparate odd and even integers in separate arrays:\n");


printf("------------------------------------------------------\n");
printf("Input the number of elements to be stored in the array :");
scanf("%d",&n);
printf("Input %d elements in the array :\n",n);
for(i=0;i<n;i++)
{
printf("element - %d : ",i);
scanf("%d",&arr1[i]);
}
for(i=0;i<n;i++)
{
if (arr1[i]%2 == 0)
{
arr2[j] = arr1[i];
j++;
}
else
{
arr3[k] = arr1[i];
k++;
} 10
}
printf("\nThe Even elements are : \n");
for(i=0;i<j;i++)
{

printf("%d ",arr2[i]);
}
printf("\nThe Odd elements are :\n");
for(i=0;i<k;i++)
{
printf("%d ", arr3[i]);
}
printf("\n\n");
}
Output:
Separate odd and even integers in separate arrays:
-------------------------------------------------------------------
Input the number of elements to be stored in the array :5
Input 5 elements in the array :
element - 0 : 25
element - 1 : 47
element - 2 : 42
element - 3 : 56
element - 4 : 32

The Even elements are :


42 56 32
The Odd elements are :
25 47

3. Write a program in C to sort elements of array in ascending order.


#include <stdio.h>
void main()
{
int arr1[100];
int n, i, j, tmp;
printf("\n\nsort elements of array in ascending order :\n ");
printf("----------------------------------------------\n");
printf("Input the size of array : ");
scanf("%d", &n);
printf("Input %d elements in the array :\n",n);
for(i=0;i<n;i++)
{ 11
printf("element - %d : ",i);
scanf("%d",&arr1[i]);
}

for(i=0; i<n; i++)

{
for(j=i+1; j<n; j++)
{
if(arr1[j] <arr1[i])
{
tmp = arr1[i];
arr1[i] = arr1[j];
arr1[j] = tmp;
}
}
}
printf("\nElements of array in sorted ascending order:\n");
for(i=0; i<n; i++)
{
printf("%d ", arr1[i]);
}
printf("\n\n");
}

Output:
sort elements of array in ascending order :
----------------------------------------------
Input the size of array : 5
Input 5 elements in the array :
element - 0 : 2
element - 1 : 7
element - 2 : 4
element - 3 : 5
element - 4 : 9

Elements of array in sorted ascending order:


2 4 5 7 9
----------------------------------------------------------------------------------------------
Week 6 12
1. Write a program in C for multiplication of two square Matrices.
#include <stdio.h>

void main()
{
int arr1[50][50],brr1[50][50],crr1[50][50],i,j,k,r1,c1,r2,c2,sum=0;

printf("\n\nMultiplication of two Matrices :\n");


printf("----------------------------------\n");

printf("\nInput the rows and columns of first matrix : ");


scanf("%d %d",&r1,&c1);
printf("\nInput the rows and columns of second matrix : ");
scanf("%d %d",&r2,&c2);
if(c1!=r2){
printf("Mutiplication of Matrix is not possible.");
printf("\nColumn of first matrix and row of second matrix must be same.");
}
else
{
printf("Input elements in the first matrix :\n");
for(i=0;i<r1;i++)
{
for(j=0;j<c1;j++)
{
printf("element - [%d],[%d] : ",i,j);
scanf("%d",&arr1[i][j]);
}
}
printf("Input elements in the second matrix :\n");
for(i=0;i<r2;i++)
{
for(j=0;j<c2;j++)
{
printf("element - [%d],[%d] : ",i,j);
scanf("%d",&brr1[i][j]);
}
}
printf("\nThe First matrix is :\n");
for(i=0;i<r1;i++)
{
printf("\n");
for(j=0;j<c1;j++) 13
printf("%d\t",arr1[i][j]);
}

printf("\nThe Second matrix is :\n");


for(i=0;i<r2;i++)
{
printf("\n");
for(j=0;j<c2;j++)
printf("%d\t",brr1[i][j]);
}

//multiplication of matrix
for(i=0;i<r1;i++)
for(j=0;j<c2;j++)
crr1[i][j]=0;
for(i=0;i<r1;i++) //row of first matrix
{
for(j=0;j<c2;j++) //column of second matrix
{
sum=0;
for(k=0;k<c1;k++)
sum=sum+arr1[i][k]*brr1[k][j];
crr1[i][j]=sum;
}
}
printf("\nThe multiplication of two matrices is : \n");
for(i=0;i<r1;i++)
{
printf("\n");
for(j=0;j<c2;j++)
{
printf("%d\t",crr1[i][j]);
}
}
}
printf("\n\n");
}

Output:
Multiplication of two Matrices :
----------------------------------
Input the rows and columns of first matrix : 2 14
2

Input the rows and columns of second matrix : 2


2
Input elements in the first matrix :
element - [0],[0] : 1
element - [0],[1] : 2
element - [1],[0] : 3
element - [1],[1] : 4
Input elements in the second matrix :
element - [0],[0] : 5
element - [0],[1] : 6

element - [1],[0] : 7
element - [1],[1] : 8

The First matrix is :

1 2
3 4
The Second matrix is :

5 6
7 8
The multiplication of two matrices is :

19 22
43 50

2. Write a program in C to find transpose of a given matrix.


#include <stdio.h>
void main()

{
int arr1[50][50],brr1[50][50],i,j,k=0,r,c;
printf("\n\nTranspose of a Matrix :\n");
printf("---------------------------\n");

printf("\nInput the rows and columns of the matrix : ");


scanf("%d %d",&r,&c);
printf("Input elements in the first matrix :\n");
for(i=0;i<r;i++)
{ 15
for(j=0;j<c;j++)
{
printf("element - [%d],[%d] : ",i,j);
scanf("%d",&arr1[i][j]);
}
}
printf("\nThe matrix is :\n");
for(i=0;i<r;i++)
{
printf("\n");
for(j=0;j<c;j++)
printf("%d\t",arr1[i][j]);
}

for(i=0;i<r;i++)
{
for(j=0;j<c;j++)
{
brr1[j][i]=arr1[i][j];
}
}

printf("\n\nThe transpose of a matrix is : ");


for(i=0;i<c;i++){
printf("\n");
for(j=0;j<r;j++){
printf("%d\t",brr1[i][j]);
}
}
printf("\n\n");
}

Output:
Transpose of a Matrix :
---------------------------

Input the rows and columns of the matrix : 2 2


Input elements in the first matrix :
element - [0],[0] : 1
element - [0],[1] : 2
element - [1],[0] : 3
element - [1],[1] : 4
The matrix is : 16

1 2
3 4

The transpose of a matrix is :


1 3
2 4

----------------------------------------------------------------------------------------------
Week 7
1. Write a program in C to search an element in a row wise and column wise sorted
matrix.
#include <stdio.h>
int searchElement(int arr2D[4][4], int n, int x)
{
int i = 0, j = n-1;
while ( i < n && j >= 0 )
{
if ( arr2D[i][j] == x )
{
printf("\nThe element Found at the position in the matrix is: %d, %d", i, j);
return 1;
}
if ( arr2D[i][j] < x )
j--;
else
i++;
}
printf("\nThe given element not found in the 2D array.");
return 0;
}

int main()
{
int arr2D[4][4] = { {15, 23, 31, 39},
{18, 26, 36, 43},
{25, 28, 37, 48},
{30, 34, 39, 50},
};
int i,j,v;
v=37;
//------------- print original array ------------------
printf("The given array in matrix form is : \n"); 17
for(i = 0; i < 4; i++)
{
for (j=0;j<4;j++)
{
printf("%d ", arr2D[i][j]);
}
printf("\n");
}
//------------------------------------------------------

printf("The given value for searching is: %d",v);


searchElement(arr2D, 4, v);
return 0;
}

Output:
The given array in matrix form is :
15 23 31 39
18 26 36 43
25 28 37 48
30 34 39 50
The given value for searching is: 37
The element Found at the position in the matrix is: 2, 2

2.Write a program in C to print individual characters of string in reverse order.


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void main()
{
char str[100]; /* Declares a string of size 100 */
int l,i;

printf("\n\nPrint individual characters of string in reverse order :\n");


printf("------------------------------------------------------\n");
printf("Input the string : ");
fgets(str, sizeof str, stdin);
l=strlen(str);
printf("The characters of the string in reverse are : \n");
for(i=l;i>=0;i--)
{
printf("%c ", str[i]); 18
}
printf("\n");
}
Output:
Print individual characters of string in reverse order :
-----------------------------------------------------------
Input the string : w3resource.com
The characters of the string in reverse are :

m o c . e c r u o s e r 3 w
-----------------------------------------------------------------------------------------------------------
Week 8
1. Write a program in C to compare two string without using string library functions.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define str_size 100 //Declare the maximum size of the string

void main()
{
char str1[str_size], str2[str_size];
int flg=0;

printf("\n\nCompare two string whether they are equal or not :\n");


printf("------------------------------------------------------\n");
printf("Input the 1st string : ");
fgets(str1, sizeof str1, stdin);

printf("Input the 2nd string : ");


fgets(str2, sizeof str2, stdin);

int i=0;

/* Runs till both strings are equal */


while(str1[i] == str2[i])
{
if(str1[i] == '\0' || str2[i] == '\0')
break;

i++;
}
if(str1[i-1] == '\0' && str2[i-1]=='\0') 19
flg=0;
else if(str1[i] > str2[i])
flg=1;
else if(str1[i] < str2[i])
flg=-1;

if(flg == 0)
{

printf("\nThe length of both strings are equal and \nalso both strings are equal.\n\n");
}
else if(flg == -1)
{
printf("\nThe length of the first string is smaller than second.\n\n");
}
else
{
printf("\nThe length of the first string is greater than second.\n\n");
}
}

Output:
Compare two string whether they are equal or not :
------------------------------------------------------
Input the 1st string : This is first string
Input the 2nd string : This is first string

The length of both strings are equal and


also both strings are equal.

2. Write a program in C to copy one string to another string.


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void main()
{
char str1[100], str2[100];
int i;
printf("\n\nCopy one string into another string :\n"); 20
printf("-----------------------------------------\n");
printf("Input the string : ");
fgets(str1, sizeof str1, stdin);

/* Copies string1 to string2 character by character */


i=0;
while(str1[i]!='\0')
{

str2[i] = str1[i];
i++;
}

//Makes sure that the string is NULL terminated


str2[i] = '\0';

printf("\nThe First string is : %s\n", str1);


printf("The Second string is : %s\n", str2);
printf("Number of characters copied : %d\n\n", i);
}
Output:
Copy one string into another string :
-----------------------------------------
Input the string : This is a string to be copied.

The First string is : This is a string to be copied.

The Second string is : This is a string to be copied.

Number of characters copied : 31


-------------------------------------------------------------------------------------------------
Week 9
1. Write c program to store information using structures with dynamic memory
allocation
#include <stdio.h>
#include<stdlib.h>

struct course
{
int marks;
char subject[30];
};
int main() 21
{
struct course *ptr;
int i, noOfRecords;
printf("Enter number of records: ");
scanf("%d", &noOfRecords);

// Allocates the memory for noOfRecords structures with pointer ptr pointing to the base
address.

ptr = (struct course*) malloc (noOfRecords * sizeof(struct course));

for(i = 0; i < noOfRecords; ++i)


{
printf("Enter name of the subject and marks respectively:\n");
scanf("%s %d", &(ptr+i)->subject, &(ptr+i)->marks);
}

printf("Displaying Information:\n");

for(i = 0; i < noOfRecords ; ++i)


printf("%s\t%d\n", (ptr+i)->subject, (ptr+i)->marks);

return 0;
}

Output:
Enter number of records: 2
Enter name of the subject and marks respectively:
Programming
22
Enter name of the subject and marks respectively:
Structure
33

Displaying Information:
Programming 22
Structure 33

2. Write a program in C to demonstrate how to handle the pointers in the program.


#include <stdio.h>
int main()
{
int* ab; 22
int m;
m=29;
printf("\n\n Pointer : How to handle the pointers in the program :\n");
printf("------------------------------------------------------------\n");
printf(" Here in the declaration ab = int pointer, int m= 29\n\n");

printf(" Address of m : %p\n",&m);


printf(" Value of m : %d\n\n",m);
ab=&m;

printf(" Now ab is assigned with the address of m.\n");


printf(" Address of pointer ab : %p\n",ab);
printf(" Content of pointer ab : %d\n\n",*ab);
m=34;
printf(" The value of m assigned to 34 now.\n");
printf(" Address of pointer ab : %p\n",ab);
printf(" Content of pointer ab : %d\n\n",*ab);
*ab=7;
printf(" The pointer variable ab is assigned the value 7 now.\n");
printf(" Address of m : %p\n",&m);//as ab contain the address of m
//so *ab changed the value of m and now m become 7
printf(" Value of m : %d\n\n",m);
return 0;
}

Output:
Pointer : How to handle the pointers in the program :
------------------------------------------------------------
Here in the declaration ab = int pointer, int m= 29

Address of m : 0x7fff24a3f8bc
Value of m : 29

Now ab is assigned with the address of m.


Address of pointer ab : 0x7fff24a3f8bc
Content of pointer ab : 29

The value of m assigned to 34 now.


Address of pointer ab : 0x7fff24a3f8bc
Content of pointer ab : 34

The pointer variable ab is assigned the value 7 now.


Address of m : 0x7fff24a3f8bc 23
Value of m : 7
--------------------------------------------------------------------------------------------------
Week 10
1. Write a program in C to demonstrate the use of & (address of) and *(value at
address) operator.

#include <stdio.h>

int main(void)
{
//normal variable

int num = 100;

//pointer variable
int *ptr;

//pointer initialization
ptr = &num;

//printing the value


printf("value of num = %d\n", *ptr);

//printing the addresses


printf("Address of num: %x\n", &num);
printf("Address of ptr: %x\n", &ptr);

return 0;
}
Output:
value of num = 100
Address of num: 9505c134
Address of ptr: 9505c138
2. Write a program in C to add two numbers using pointers
#include <stdio.h>
#include<conio.h>
main()
{
int x=10,y=20,*p1,*p2,z;
p1=&x;
p2=&y;
Z=(*p1)+(*p2);
printf(“addition of two pointers is z=%d”,z); 24
getch();
}

Output :
addition of two pointers is 30.
-----------------------------------------------------------------------------------------------
Week 11
1.Write a program in C to add numbers using call by reference .
Program:
#include <stdio.h>
long addTwoNumbers(long *, long *);

int main()
{
long fno, sno, *ptr, *qtr, sum;

printf("\n\n Pointer : Add two numbers using call by reference:\n");


printf("-------------------------------------------------------\n");

printf(" Input the first number : ");


scanf("%ld", &fno);
printf(" Input the second number : ");
scanf("%ld", &sno);
sum = addTwoNumbers(&fno, &sno);
printf(" The sum of %ld and %ld is %ld\n\n", fno, sno, sum);
return 0;
}
long addTwoNumbers(long *n1, long *n2)
{
long sum;
sum = *n1 + *n2;
return sum;
}
Output:
Pointer : Add two numbers using call by reference:
-------------------------------------------------------
Input the first number : 5
Input the second number : 6
The sum of 5 and 6 is 11
2. Write a program in C to find the largest element using Dynamic Memory 25
Allocation
Program:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,n;
float *element;
printf("\n\n Pointer : Find the largest element using Dynamic Memory Allocation :\n");
printf("-------------------------------------------------------------------------\n");
printf(" Input total number of elements(1 to 100): ");
scanf("%d",&n);
element=(float*)calloc(n,sizeof(float)); // Memory is allocated for 'n' elements

if(element==NULL)
{
printf(" No memory is allocated.");
exit(0);
}
printf("\n");
for(i=0;i<n;++i)
{
printf(" Number %d: ",i+1);
scanf("%f",element+i);
}
for(i=1;i<n;++i)
{
if(*element<*(element+i))
*element=*(element+i);
}
printf(" The Largest element is : %.2f \n\n",*element);
return 0;
}

Output:
Pointer : Find the largest element using Dynamic Memory Allocation :
-------------------------------------------------------------------------
Input total number of elements(1 to 100): 5

Number 1: 5
Number 2: 7
Number 3: 2
Number 4: 9 26
Number 5: 8
The Largest element is : 9.00
--------------------------------------------------------------------------------------------------
Week 12
1. Write a program in C to swap elements using call by reference .
Program:
#include <stdio.h>
#include <conio.h>
main()
{
int x,y;
clrscr();
printf(“enter x,y values:”);
scanf(“%d%d”,&x,&y);
swap(&x,&y);
getch();
}

swap(int *a,int *b)


{
int t;
t=*a;
*a=*b;
*b=t;
}

2. Write a program in C to count the number of vowels and consonants in a string


using a pointer
Program:
#include <stdio.h>
#include <string.h>

int main()
{
char s[1000];
int i,vowels=0,consonants=0;

printf("Enter the string : ");


gets(s);

for(i=0;s[i];i++)
{
if((s[i]>=65 && s[i]<=90)|| (s[i]>=97 && s[i]<=122)) 27
{

if(s[i]=='a'|| s[i]=='e'||s[i]=='i'||s[i]=='o'||s[i]=='u'||s[i]=='A'||s[i]=='E'||s[i]=='I'||s[i]=='O'
||s[i]=='U')
vowels++;
else
consonants++;
}

printf("vowels = %d\n",vowels);
printf("consonants = %d\n",consonants);

return 0;
}

Output:
Enter the string : hello world
vowels = 3
consonants = 7
---------------------------------------------------------------------------------------------------
Week 13
1. Write a program in C to show how a function returning pointer .
Program:
#include<stdio.h>
#include<conio.h>
main()
{
int a=5;
printf(“a=%d\n”,a);
inc(&a);
printf(“a=%d\n”,a);
}
inc(int *a)
{
a=a+1;
printf(“a=%d\n”,a);
}

2. Write a C program to find sum of n elements entered by user. To perform this


program, allocate memory dynamically using malloc( ) function.
program: 28
#include <stdio.h>
#include <stdlib.h>

int main()
{
int n, i, *ptr, sum = 0;

printf("Enter number of elements: ");


scanf("%d", &n);

ptr = (int*) malloc(n * sizeof(int));

// if memory cannot be allocated


if(ptr == NULL)
{

printf("Error! memory not allocated.");


exit(0);
}

printf("Enter elements: ");


for(i = 0; i < n; ++i)
{
scanf("%d", ptr + i);
sum += *(ptr + i);
}

printf("Sum = %d", sum);

// deallocating the memory


free(ptr);

return 0;
}

---------------------------------------------------------------------------------------------------
Week 14
1. Write a C program to find sum of n elements entered by user. To perform this
program, allocate memory dynamically using calloc( ) function. Understand the
difference between the above two programs

program:
#include <stdio.h> 29
#include <stdlib.h>

int main()
{
int n, i, *ptr, sum = 0;
printf("Enter number of elements: ");
scanf("%d", &n);

ptr = (int*) calloc(n, sizeof(int));


if(ptr == NULL)
{
printf("Error! memory not allocated.");
exit(0);
}

printf("Enter elements: ");


for(i = 0; i < n; ++i)
{
scanf("%d", ptr + i);
sum += *(ptr + i);
}

printf("Sum = %d", sum);


free(ptr);
return 0;
}

2. Write a program in C to convert decimal number to binary number using the


function
program:
#include<stdio.h>
long toBin(int);
int main()
{
long bno;
int dno;
printf("\n\n Function : convert decimal to binary :\n");
printf("-------------------------------------------\n");
printf(" Input any decimal number : ");
scanf("%d",&dno);
bno = toBin(dno);
printf("\n The Binary value is : %ld\n\n",bno);
return 0; 30
}

long toBin(int dno)


{
long bno=0,remainder,f=1;
while(dno != 0)
{
remainder = dno % 2;
bno = bno + remainder * f;
f = f * 10;
dno = dno / 2;
}
return bno;
}

Output:
Function : convert decimal to binary :
-------------------------------------------
Input any decimal number : 65

The Binary value is : 1000001


------------------------------------------------------------------------------------------------------
Week 15
1. Write a program in C to check whether a number is a prime number or not using
the function.
program:
#include <stdio.h>
#include <conio.h>
void main()
{
int num,res=0;
clrscr();
printf("\nENTER A NUMBER: ");
scanf("%d",&num);
res=prime(num);
if(res==0)
printf("\n%d IS A PRIME NUMBER",num);
else
printf("\n%d IS NOT A PRIME NUMBER",num);
getch();
}
int prime(int n) 31
{
int i;
for(i=2;i<=n/2;i++)
{
if(n%i!=0)
continue;
else
return 1;
}
return 0;
}
Output:
enter a number:5
5 is a prime numer.

2. Write a program in C to get the largest element of an array using the function
Program:
#include<stdio.h>
#define MAX 100

int findMaxElem(int []);


int n;

int main()
{
int arr1[MAX],mxelem,i;
printf(" Input the number of elements to be stored in the array :");
scanf("%d",&n);

printf(" Input %d elements in the array :\n",n);


for(i=0;i<n;i++)
{
printf(" element - %d : ",i);
scanf("%d",&arr1[i]);
}
mxelem=findMaxElem(arr1);

printf(" The largest element in the array is : %d\n\n",mxelem);


return 0;
}
int findMaxElem(int arr1[]) 32
{
int i=1,mxelem;
mxelem=arr1[0];
while(i < n)
{
if(mxelem<arr1[i])
mxelem=arr1[i];
i++;
}
return mxelem;
}

Output:
Function : get largest element of an array :
-------------------------------------------------
Input the number of elements to be stored in the array :5
Input 5 elements in the array :
element - 0 : 1
element - 1 : 2
element - 2 : 3
element - 3 : 4
element - 4 : 5
The largest element in the array is : 5
-----------------------------------------------------------------------------------------------------
Week 16
1.Write a program in C to append multiple lines at the end of a text file.
program:
#include <stdio.h>
int main ()
{
FILE * fptr;
int i,n;
char str[100];
char fname[20];
char str1;

printf("\n\n Append multiple lines at the end of a text file :\n");


printf("------------------------------------------------------\n");
printf(" Input the file name to be opened : ");
scanf("%s",fname);
fptr = fopen(fname, "a");
printf(" Input the number of lines to be written : "); 33
scanf("%d", &n);
printf(" The lines are : \n");
for(i = 0; i < n+1;i++)
{
fgets(str, sizeof str, stdin);
fputs(str, fptr);
}
fclose (fptr);
//----- Read the file after appended -------
fptr = fopen (fname, "r");
printf("\n The content of the file %s is :\n",fname);
str1 = fgetc(fptr);
while (str1 != EOF)
{
printf ("%c", str1);
str1 = fgetc(fptr);
}
printf("\n\n");
fclose (fptr);
//------- End of reading ------------------
return 0;
}
Output:
Append multiple lines at the end of a text file :
------------------------------------------------------
Input the file name to be opened : test.txt
Input the number of lines to be written : 3
The lines are :
test line 5
test line 6
test line 7

The content of the file test.txt is :

test line 1
test line 2
test line 3
test line 4

test line 5
test line 6
test line 7
2. Write a program in C to copy a file in another name. 34
program:
#include <stdio.h>
#include <stdlib.h>

void main()
{
FILE *fptr1, *fptr2;
char ch, fname1[20], fname2[20];

printf("\n\n Copy a file in another name :\n");


printf("----------------------------------\n");

printf(" Input the source file name : ");


scanf("%s",fname1);

fptr1=fopen(fname1, "r");
if(fptr1==NULL)
{
printf(" File does not found or error in opening.!!");
exit(1);
}
printf(" Input the new file name : ");
scanf("%s",fname2);
fptr2=fopen(fname2, "w");
if(fptr2==NULL)
{
printf(" File does not found or error in opening.!!");
fclose(fptr1);
exit(2);
}
while(1)
{
ch=fgetc(fptr1);
if(ch==EOF)
{
break;
}
else
{
fputc(ch, fptr2);

}
} 35
printf(" The file %s copied successfully in the file %s. \n\n",fname1,fname2);
fclose(fptr1);
fclose(fptr2);
getchar();
}
Output:
Copy a file in another name :
----------------------------------
Input the source file name : test.txt
Input the new file name : test1.txt
The file test.txt copied successfully in the file test1.txt.

3. Write a program in C to remove a file from the disk .


program:
#include <stdio.h>

void main()
{
int status;
char fname[20];
printf("\n\n Remove a file from the disk :\n");
printf("----------------------------------\n");
printf(" Input the name of file to delete : ");
scanf("%s",fname);
status=remove(fname);
if(status==0)
{
printf(" The file %s is deleted successfully..!!\n\n",fname);
}
else
{
printf(" Unable to delete file %s\n\n",fname);
}
}

Output:
Remove a file from the disk :
----------------------------------
Input the name of file to delete : test.txt
The file test.txt is deleted successfully..!!
************************ PPSC LAB COMPLETED************************

You might also like