C Lab Exercise Sem2 Engineering

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 37

C Program Using Simple Statement and Expressions

EX.No 1a Calculate Area and Circumference of Circle

Aim:
To write C program to calculate Area and Circumference of Circle.
Algorithm:

Step 1:
Start
Step 2:
Declare variables radius, area, circumference in float type
Step 3:
Read radius of circle as radius
Step 4:
Calculate area using the expression area = 3.14 * radius * radius
Step 5:
Calculate circumference using the expression
circumference=2*3.14*radius
Step 6: Print area and circumference
Step 7: Stop

Program:

#include<stdio.h>
int main() {
float radius, area,circumference;
printf("\nEnter the radius of Circle : ");
scanf("%f", &radius);
area = 3.14 * radius * radius;
circumference=2*3.14*radius;
printf("\nArea of Circle : %.2f", area);
printf("\nCircumference of Circle : %.2f", circumference);
return (0);
}

Output:

Enter the radius of Circle : 5


Area of Circle : 78.50
Circumference of Circle : 31.40

Result:

Thus, the C program to calculate Area and Circumference of Circle


was written executed and the output was verified successfully.
EX.No 1b Simple Interest Calculation

Aim:
To write C program to calculate simple interest.
Algorithm:
Step 1: Start
Step 2: Declare Variables for Principal amount, Rate of interest, time
Step 3: Read Principal amount, Rate of interest, time
Step 4: Calculate interest amount using the expression amt=(p*r*t)/100
Step 5: Print amt
Step 6: Stop

Program:

#include<stdio.h>
int main()
{
int p,r,t,amt;
printf("Enter Principle amount, Rate of interest & time to find simple
interest: \n");
scanf("%d%d%d",&p,&r,&t);
amt=(p*r*t)/100;
printf("Simple interest = %d",amt);
return 0;
}

Output:

Enter Principle amount, Rate of interest & time to find simple interest:
20000
6
2
Simple interest = 2400

Result:

Thus, the C program to calculate Simple Interest was written


executed and the output was verified successfully.
Scientific Problem-Solving Using Decision Making and Looping

Ex No 2a Largest of Three number

Aim:
To find the largest of three numbers using if...else if.

Algorithm:
Step 1. Read the values of x, y and z.
Step 2. If x is greater than y and x is greater than z then print x
is greatest, otherwise go to step 3.
Step 3. If y is greater than z then print y is greatest, otherwise
go to step 4.
Step 4. display z is greatest.

Program:
#include<stdio.h>
void main()
{
int x,y,z;
printf("Enter the values for x,y and z \n");
scanf("%d%d%d",&x,&y,&z);
if((x>y)&& (x>z))
printf(" %d is greatest",x);
else if (y>z)
printf ("%d is greatest",y);
else
printf("%d is greatest",z);
}

Output:
Enter the values for x, y and z
25
46
22
46 is greatest
Result:
Ex NO 2b Leap Year or Not

Aim:
To find whether the given year is leap year or Not.

Algorithm:
Step 1. Get the input year from the user to check for leap year.
Step 2. If the year is evenly divisible by 4, go to step 3. Otherwise, go
to step 6.
Step 3. If the year is evenly divisible by 100, go to step 4. Otherwise, go
to step 5.
Step 4. If the year is evenly divisible by 400, go to step 5. Otherwise, go
to step 6.
Step 5. The year is a leap year (it has 366 days).
Step 6. The year is not a leap year (it has 365 days).

Program:
#include <stdio.h>
int main()
{
int year;
printf("Enter a year: ");
scanf("%d",&year);
if(year%4 == 0)
{
if( year%100 == 0)
{
// year is divisible by 400, hence the year is a leap year
if ( year%400 == 0)
printf("%d is a leap year.", year);
else
printf("%d is not a leap year.", year);
}
else
printf("%d is a leap year.", year );
}
else
printf("%d is not a leap year.", year);
return 0;
}
Output:
Enter a year: 1900
1900 is not a leap year.
Result:
Ex No 2 C Armstrong Number or Not

Aim:
To check whether a given number is Armstrong number or not.

Algorithm:
Step 1: Initialize the value of res to 0.
Step 2: Read the three digit number in num variable to check for Armstrong
number.
Step 3: Assign originalNum to the variable num.
Step 4: Extract the digits from the num.
Step 5: Find the cube of each digit in num and add them and store it in
variable res.
Step 6: Repeat the step 5 untill the num is not equal to zero..
Step 7: Compare the res and originalNum, if it is equal display the number
is an Armstrong number, otherwise display the number is not an
Armstrong number.

Program:
#include <stdio.h>
int main()
{
int num, originalNum, rem, res = 0;
printf("Enter a integer: ");
scanf("%d", &originalNum);
num = originalNum;
while (num != 0)
{
rem = num%10;
res+= rem*rem*rem;
num /= 10;
}
if(res == originalNum)
printf("%d is an Armstrong number.",originalNum);
else
printf("%d is not an Armstrong number.",originalNum);
return 0;
}
Output:

Enter a integer:
153
153 is an Armstrong number

Result:
Generating Different Patterns Using Multiple Control Statements

Ex No 3a Generating Number Pattern

Aim:
To Generate following pattern in C Programing
1
123
12345
1234567
123456789
1234567
12345
123
1

Algorithm:
Step 1: Start
Step 2: Read Number of Rows to print
Step 3: Use outer loop for maintaining Number of rows
Step 4: Use Inner Loop appropriately for required Coolum output
Step 5: Print required numbers
Step 6: Stop

Program:

#include<stdio.h>
#include<conio.h>
int main()
{
int n, x, y, k;
printf("Enter the number of rows to show number paatern: ");
scanf("%d",&n);
for(x = 1; x <= n; x++)
{
for(y = x; y <n; y++)
{
printf(" ");
}
for(k = 1; k < (x*2); k++)
{
printf("%d",k);
}
printf("\n");
}
for(x = 4; x >= 1; x--)
{
for(y = n; y > x; y--)
{
printf(" ");
}
for(k = 1; k < (x*2); k++)
{
printf("%d",k);
}
printf("\n");
}
return 0;
}

Output:

Enter the number of rows to show number paatern: 5


1
123
12345
1234567
123456789
1234567
12345
123
1

Result:
Ex No 3b Generating Symbol Pattern

Aim:
To Generate following pattern in C Programing
*******
******
*****
****
***
**
*
**
***
****
*****
******
*******

Algorithm:
Step 1: Start
Step 2: Read Number of Column to print
Step 3: Use outer loop for maintaining Number of rows
Step 4: Use Inner Loop appropriately for required Coolum output
Step 5: Print required symbol link space or *
Step 6: Stop

Program:

#include <stdio.h>

int main(void) {

int n;
printf("Enter the number of columns");
scanf("%d",&n);
for(int i=0;i<n;i++)
{
for(int j=0;j<i;j++)
{
printf(" ");
}
for(int k=1;k<=n-i;k++)
{
printf("*");
}
printf("\n");
}
for(int i=1;i<n;i++)
{
for(int j=1;j<n-i;j++)
{
printf(" ");
}
for(int k=1;k<=i+1;k++)
{
printf("*");
}
printf("\n");
}
return 0;
}

Output:

Enter the number of columns7


*******
******
*****
****
***
**
*
**
***
****
*****
******
*******

Result:
Ex No 3C Generating Letters Pattern

Aim:
To Generate following pattern in C Programing
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA

Algorithm:
Step 1: Start
Step 2: Read Number of lines to print
Step 3: Use outer loop for maintaining Number of rows
Step 4: Use Inner Loop appropriately for required Coolum output
Step 5: Print required letter
Step 6: Stop

Program:

#include<stdio.h>

void main()
{
int i,n,j;

printf("Enter the no of lines\n");


scanf("%d",&n);

for(i=1;i<=n;i++)
{
for(j=1;j<=n-i;j++)
{
printf(" ");
}
for(j=1;j<=i;j++)
{
printf("%c",(char)(j+64));
}
for(j=i-1;j>=1;j--)
{
printf("%c",(char)(j+64));
}
printf("\n");
}
}

Output:

Enter the no of lines


5
A
ABA
ABCBA
ABCDCBA
ABCDEDCBA
Result:
Problem Solving Using One Dimensional Array

Ex No 4a Finding the sum of Array Elements.

Aim:

Write C program to find sum of array elements.

Algorithm:

Step 1: Start
Step 2: Read Number of elements in the array as n
Step 3: Initialize a variable s=0 for summation purpose
Step 4: Read n elements and store it in a array called a, using for loop
Step 5: Add elements with s while reading.
Step 6: Print value of s
Step 7: Stop

Program:

#include<stdio.h>
void main()
{
int i,n, a[10],s;
printf("Enter the number of element :\n");
scanf("%d",&n);
s=0;
printf("Enter element:\n");
for(i=0;i<n;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
s=s+a[i];
}
printf("Sum of arrary element:%d",s);
}

Output:

Enter the number of element :


5
Enter element:
a[0]=10
a[1]=20
a[2]=30
a[3]=4
a[4]=7
Sum of arrary element:71

Result:
Ex No 4b Insert an Element in an Array

Aim:
Write C program to Insert an Element in an Array.

Algorithm:

Step 1: Start
Step 2: Read Number of elements in the array as n
Step 3: Read n elements and store it in a array called a, using for loop
Step 4: Read element to be insert and position in num and pos
Step 5: From the end of the array, Using for loop start moving the elements
one index ahead till the required index reach.
Step 6: increase number of elements n by one
Step 7: Insert the element in the required index.
Step 8: Print all the elements.
Step 9: Stop

Program:

#include<stdio.h>
void main()
{
int i,n,pos,num, a[10];
printf("Enter the number of element :\n");
scanf("%d",&n);
printf("Enter element:\n");
for(i=0;i<n;i++)
{
printf("a[%d]=",i);
scanf("%d",&a[i]);
}
printf("\nEnter the pos where the no. is to be inserted :");
scanf("%d",&pos);
printf("\nEnter the the no. is to be inserted :");
scanf("%d",&num);
for(i=n-1;i>=pos;i--)
a[i+1]=a[i];
n=n+1;
a[pos]=num;
printf("\n Display array after insertion:\n");
for(i=0;i<n;i++)
{
printf("a[%d]=%d\n",i,a[i]);
}
}

Output:

Enter the number of element :


5
Enter element:
a[0]=6
a[1]=8
a[2]=9
a[3]=7
a[4]=1
Enter the pos where the no. is to be inserted :2

Enter the the no. is to be inserted :3

Display array after insertion:


a[0]=6
a[1]=8
a[2]=3
a[3]=9
a[4]=7
a[5]=1

Result:
Mathematical Problem Solving Using two Dimensional Array

Ex No 5a Add two Matrix

Aim:

Write C program to Add two Matrix.

Algorithm:

Step 1: Start
Step 2: Declare variables m,n,p,q for storing number of rows and columns of
two matrix.
Step 3: Read Number of rows and columns of first matrix as m,n
Step 4: Read Number of rows and columns of second matrix as p,q
Step 5: Check whether m==p and n==q if so go to step 6 else print matrix
addition not possible and stop the program.
Step 6: Using two nested for loop read elements of first matrix
Step 7: Using two nested for loop read elements of second matrix
Step 8: Using two nested for loop add first matrix element and second
matrix element and store it in third matrix.
Step 9: Using two nested for loop print third matrix.
Step 10: Stop.

Program:

#include<stdio.h>
#include <stdlib.h>
void main()
{
int i,j,m,n,p,q;
int a[10][10], b[10][10], c[10][10];
printf("\nEnter no of rows and column of matrixA:");
scanf("%d%d",&m,&n);
printf("\nEnter no of rows and column of matrixB:");
scanf("%d%d",&p,&q);
if(m!=p && n!=q)
{
printf("\n Matrix cannot be added.");
exit(0);
}
printf("\n Matrix can be added");
printf("\n Enter elements of matrix A:");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
printf("\n Enter elements of matrix B:");
for(i=0;i<p;i++)
for(j=0;j<q;j++)
scanf("%d",&b[i][j]);
for(i=0;i<m;i++)
for(j=0;j<n;j++)
c[i][j]=a[i][j]+b[i][j];
printf("\n Display matrix A:\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%d\t",a[i][j]);
printf("\n");
}
printf("\n Display matrix B:\n");
for(i=0;i<p;i++)
{
for(j=0;j<q;j++)
printf("%d\t",b[i][j]);
printf("\n");
}
printf("\n Display matrix C:\n");
for(i=0;i<p;i++)
{
for(j=0;j<q;j++)
printf("%d\t",c[i][j]);
printf("\n");
}
}

Output:

Enter no of rows and column of matrixA:2


2

Enter no of rows and column of matrixB:2


2

Matrix can be added


Enter elements of matrix A:1
2
3
4

Enter elements of matrix B:5


6
7
8

Display matrix A:
1 2
3 4

Display matrix B:
5 6
7 8

Display matrix C:
6 8
10 12

Result:
Ex No 5b Multiply two Matrix

Aim:

Write C program to Multiply two Matrix.

Algorithm:

Step 1: Start
Step 2: Declare variables m,n,p,q for storing number of rows and columns of
two matrix.
Step 3: Read Number of rows and columns of first matrix as m,n
Step 4: Read Number of rows and columns of second matrix as p,q
Step 5: Check whether n==p if so go to step 6 else print matrix
multiplication not possible and stop the program.
Step 6: Using two nested for loop read elements of first matrix
Step 7: Using two nested for loop read elements of second matrix
Step 8: Using three nested for loop multiply first matrix element and
second matrix element and store it in third matrix.
Step 9: Using two nested for loop print third matrix.
Step 10: Stop.

Program:

#include<stdio.h>
#include <stdlib.h>
void main()
{
int i,j,m,n,p,q,k;
int a[10][10], b[10][10], c[10][10];
printf("\nEnter no of rows and column of matrixA:");
scanf("%d%d",&m,&n);
printf("\nEnter no of rows and column of matrixB:");
scanf("%d%d",&p,&q);
printf("\n Enter elements of matrix A:\n");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&a[i][j]);
printf("\n Enter elements of matrix B:\n");
for(i=0;i<p;i++)
for(j=0;j<q;j++)
scanf("%d",&b[i][j]);
if(n==p)
{
for(i=0;i<m;i++)
for(j=0;j<q;j++)
{
c[i][j]=0;
for(k=0;k<n;k++)
c[i][j]=c[i][j]+(a[i][k]*b[k][j]);
}
}
else
{
printf("\n Matrix cannot be multiplied");
exit(1);
}
printf("\n Display matrix A:\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%d\t",a[i][j]);
printf("\n");
}
printf("\n Display matrix B:\n");
for(i=0;i<p;i++)
{
for(j=0;j<q;j++)
printf("%d\t",b[i][j]);
printf("\n");
}
printf("\n Display Product:\n");
for(i=0;i<m;i++)
{
for(j=0;j<q;j++)
printf("%d\t",c[i][j]);
printf("\n");
}
}

Output:

Enter no of rows and column of matrixA:2


3

Enter no of rows and column of matrixB:3


2

Enter elements of matrix A:


1
2
3
4
5
6

Enter elements of matrix B:


7
8
9
10
11
12

Display matrix A:
1 2 3
4 5 6

Display matrix B:
7 8
9 10
11 12

Display Product:
58 64
139 154

Result:
Solving Problems Using String Functions

Ex No 6ai Length of a String without String Function

Aim:

Write C program to Find Length of a string without string function

Algorithm:

Program:

#include <stdio.h>
int main()
{
char s[100];
int i;

printf("Enter a string: ");


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

for(i = 0; s[i] != '\0'; ++i);

printf("Length of string: %d", i);


return 0;
}

Output:
Enter a string: C Programming
Length of string: 13

Ex No 6aii Length of a String with String Function

Aim:

Write C program to Find Length of a string with string function

Algorithm:

Program:

#include <stdio.h>
#include<string.h>
int main()
{
char s[100];
printf("Enter a string: ");
scanf("%[^\n]", s);
printf("Length of string: %ld", strlen(s));
return 0;
}

Output:
Enter a string: C Programming
Length of string: 13

Ex No 6bi Copy of a String without String Function

Aim:

Write C program to copy a string without string function

Algorithm:

Program:

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

int main()
{
char Str[100], CopyStr[100];
int i;
printf("\n Please Enter any String : ");
gets(Str);
for (i = 0; Str[i]!='\0'; i++)
{
CopyStr[i] = Str[i];
}
CopyStr[i] = '\0';
printf("\n String that we coped into CopyStr = %s", CopyStr);
return 0;
}

Output:

Please Enter any String : Strings in C

String that we coped into CopyStr = Strings in C

Ex No 6bii Copy of a String with String Function

Aim:

Write C program to copy a string with string function

Algorithm:
Program:

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

int main()
{
char Str[100], CopyStr[100];
int i;
printf("\n Please Enter any String : ");
gets(Str);
strcpy(CopyStr,Str);
printf("\n String that we coped into CopyStr = %s", CopyStr);
return 0;
}

Output:

Please Enter any String : Strings in C

String that we coped into CopyStr = Strings in C

Ex No 6ci Compare two String without String Function

Aim:

Write C program to compare two string without string function

Algorithm:

Program:

#include <stdio.h>
int compare(char[],char[]);
int main()
{
char str1[20];
char str2[20];
printf("Enter the first string : ");
gets(str1);
printf("Enter the second string : ");
gets(str2);
int c= compare(str1,str2);
if(c==0)
printf("strings are same");
else
printf("strings are not same");

return 0;
}

int compare(char a[],char b[])


{
int flag=0,i=0;
while(a[i]!='\0' &&b[i]!='\0')
{
if(a[i]!=b[i])
{
flag=1;
break;
}
i++;
}
if(flag==0)
return 0;
else
return 1;
}

Output:

Run 1:

Enter the first string : C Programming


Enter the second string : C Language
strings are not same

Run2:

Enter the first string : C Programming


Enter the second string : C Programming
strings are same

Ex No 6cii Compare two String with String Function

Aim:

Write C program to compare two string with string function

Algorithm:
Program:

#include <stdio.h>
#include<string.h>
int main()
{
char str1[20];
char str2[20];
int value;
printf("Enter the first string : ");
gets(str1);
printf("Enter the second string : ");
gets(str2);
value=strcmp(str1,str2);
if(value==0)
printf("strings are same");
else
printf("strings are not same");
return 0;
}

Output:

Run 1:

Enter the first string : C Programming


Enter the second string : C Language
strings are not same

Run2:

Enter the first string : C Programming


Enter the second string : C Programming
strings are same
Solving Problems Using User Defined Functions

Ex No 7a Swap Two Numbers using call by Value Method

Aim:

Write C program to Swap Two Numbers using call by Value Method.

Algorithm:

Program:

#include <stdio.h>
void swap(int , int);
int main()
{
int a,b;
printf("Enter Two Values:\n");
scanf("%d%d",&a,&b);
printf("Before swapping the values in main a = %d, b = %d\n",a,b);
swap(a,b);
printf("After swapping values in main a = %d, b = %d\n",a,b);
}
void swap (int a, int b)
{
int temp;
temp = a;
a=b;
b=temp;
printf("After swapping values in function a = %d, b = %d\n",a,b);
}

Output:

Enter Two Values:


10
20
Before swapping the values in main a = 10, b = 20
After swapping values in function a = 20, b = 10
After swapping values in main a = 10, b = 20
Ex No 7b Swap Two Numbers using call by Reference Method

Aim:

Write C program to Swap Two Numbers using call by Reference Method.

Algorithm:

Program:

#include <stdio.h>
void swap(int *, int *);
int main()
{
int a,b;
printf("Enter Two Values:\n");
scanf("%d%d",&a,&b);
printf("Before swapping the values in main a = %d, b = %d\n",a,b);
swap(&a,&b);
printf("After swapping values in main a = %d, b = %d\n",a,b);
}
void swap (int *a, int *b)
{
int temp;
temp = *a;
*a=*b;
*b=temp;
printf("After swapping values in function a = %d, b = %d\n",*a,*b);
}

Output:

Enter Two Values:


10
20
Before swapping the values in main a = 10, b = 20
After swapping values in function a = 20, b = 10
After swapping values in main a = 20, b = 10
Ex No 7b Sort an Array of Elements using Functions

Aim:

Write C program to Sort an Array of Elements using Functions.

Algorithm:

Program:

#include<stdio.h>
void mySort(int[],int);
void main ()
{
int arr[10],n,i;
printf("Enter Number of elements in the array\n");
scanf("%d",&n);
printf("Enter Elements one by one\n");
for(i=0;i<n;i++)
scanf("%d",&arr[i]);
mySort(arr,n);
}
void mySort(int a[],int n)
{
int i, j,temp;
for(i = 0; i<n; i++)
{
for(j = i+1; j<n; j++)
{
if(a[j] < a[i])
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
printf("Printing Sorted Element List ...\n");
for(i = 0; i<n; i++)
{
printf("%d\n",a[i]);
}
}

Output:

Enter Number of elements in the array


5
Enter Elements one by one
6
2
8
3
1
Printing Sorted Element List ...
1
2
3
6
8
Solving Problems using Recursive Functions

Ex No 8a Factorial of a Number using Recursive Functions

Aim:

Write C program to find Factorial of a Number using Recursive


Functions.

Algorithm:

Program:

#include<stdio.h>

long factorial(int n)
{
if (n == 0)
return 1;
else
return(n * factorial(n-1));
}

void main()
{
int number;
long fact;
printf("Enter a number: ");
scanf("%d", &number);

fact = factorial(number);
printf("Factorial of %d is %ld\n", number, fact);
}

Output:

Enter a number: 6
Factorial of 6 is 720
Ex No 8b Fibonacci Series using Recursive Functions

Aim:

Write C program to generate Fibonacci Series using Recursive


Functions.

Algorithm:

Program:

#include<stdio.h>
int fibonacci(int);
int main()
{
int n, m= 0, i;
printf("Enter Total terms:\n");
scanf("%d", &n);
printf("Fibonacci series terms are:\n");
for(i = 1; i <= n; i++)
{
printf("%d\n", fibonacci(m));
m++;
}
return 0;
}
int fibonacci(int n)
{
if(n == 0 || n == 1)
return n;
else
return(fibonacci(n-1) + fibonacci(n-2));
}

Output:

Enter Total terms:


10
Fibonacci series terms are:
0
1
1
2
3
5
8
13
21
34
Ex No 8c Tower of Hanoi using Recursive Functions

Aim:

Write C program to solve Tower of Hanoi using Recursive Functions.

Algorithm:

Program:

#include <stdio.h>

void towers(int, char, char, char);

int main()
{
int num;

printf("Enter the number of disks : ");


scanf("%d", &num);
printf("The sequence of moves involved in the Tower of Hanoi are :\n");
towers(num, 'A', 'C', 'B');
return 0;
}
void towers(int num, char frompeg, char topeg, char auxpeg)
{
if (num == 1)
{
printf("\n Move disk 1 from peg %c to peg %c", frompeg, topeg);
return;
}
towers(num - 1, frompeg, auxpeg, topeg);
printf("\n Move disk %d from peg %c to peg %c", num, frompeg, topeg);
towers(num - 1, auxpeg, topeg, frompeg);
}

Output:

nter the number of disks : 4


The sequence of moves involved in the Tower of Hanoi are :

Move disk 1 from peg A to peg B


Move disk 2 from peg A to peg C
Move disk 1 from peg B to peg C
Move disk 3 from peg A to peg B
Move disk 1 from peg C to peg A
Move disk 2 from peg C to peg B
Move disk 1 from peg A to peg B
Move disk 4 from peg A to peg C
Move disk 1 from peg B to peg C
Move disk 2 from peg B to peg A
Move disk 1 from peg C to peg A
Move disk 3 from peg B to peg C
Move disk 1 from peg A to peg B
Move disk 2 from peg A to peg C
Move disk 1 from peg B to peg C
Solving Problems using Dynamic Memory Allocation

Ex No 9a Print Text using Dynamic Memory

Aim:

Write C program to Print Text using Dynamic Memory.

Algorithm:

Program:

#include <stdio.h>
#include <stdlib.h>
int main()
{
int n;
char *text;
printf("Enter limit of the text: ");
scanf("%d",&n);
text=(char*)malloc(n*sizeof(char));
printf("Enter text: ");
scanf(" ");
gets(text);
printf("Inputted text is: %s\n",text);
printf("\n%ld",strlen(text));
free(text);
return 0;
}

Output:

Enter limit of the text: 25


Enter text: This is C Programming Lab
Inputted text is: This is C Programming Lab

25
Ex No 9b One Dimensional array Dynamic Memory

Aim:

Write C program to process One Dimensional array using Dynamic


Memory method.

Algorithm:

Program:

#include <stdio.h>
#include <stdlib.h>
int main()
{
int *arr;
int limit,i;
int sum=0;
printf("Enter total number of elements: ");
scanf("%d",&limit);
arr=(int*)malloc(limit*sizeof(int));
if(arr==NULL)
{
printf("Insufficient Memory, Exiting... \n");
return 0;
}
printf("Enter %d elements:\n",limit);
for(i=0; i<limit; i++)
{
printf("Enter element %3d: ",i+1);
scanf("%d",(arr+i));
sum=sum + *(arr+i);
}
printf("Array elements are:");
for(i=0; i<limit; i++)
printf("%3d ",*(arr+i));
printf("\nSum of all elements: %d\n",sum);
return 0;
}

Output:

Enter total number of elements: 5


Enter 5 elements:
Enter element 1: 6
Enter element 2: 3
Enter element 3: 8
Enter element 4: 9
Enter element 5: 2
Array elements are: 6 3 8 9 2
Sum of all elements: 28
Real-time Application Using Structure and Union

Ex No 10a Creating Employee Payslip Using Structure

Aim:

Write C program to Create Employee Payslip Using Structure.

Algorithm:

Program:

#include <stdio.h>
#include <stdlib.h>
struct emp
{
int empno ;
char name[10] ;
int bpay, allow, ded, npay ;
} ;

int main()
{
struct emp *pemp;
int n,i;

printf("Enter total number of Employes: ");


scanf("%d",&n);
pemp=(struct emp*)malloc(n*sizeof(struct emp));

if(pemp==NULL)
{
printf("Insufficient Memory, Exiting... \n");
return 0;
}
for(i = 0 ; i < n ; i++)
{
printf("\nEnter the employee number : ") ;
scanf("%d", &(pemp+i)->empno) ;
printf("\nEnter the name : ") ;
scanf("%s", (pemp+i)->name) ;
printf("\nEnter the basic pay, allowances & deductions : ") ;
scanf("%d %d %d", &(pemp+i)->bpay, &(pemp+i)->allow, &(pemp+i)-
>ded) ;
(pemp+i)->npay = (pemp+i)->bpay + (pemp+i)->allow - (pemp+i)->ded ;
}
printf("\nEmp. No. Name \t Bpay \t Allow \t Ded \t Npay \n\n") ;
for(i = 0 ; i < n ; i++)
{
printf("%d \t %s \t %d \t %d \t %d \t %d \n", (pemp+i)->empno,
(pemp+i)->name, (pemp+i)->bpay, (pemp+i)->allow, (pemp+i)->ded,
(pemp+i)->npay) ;
}

}
Output:

Enter total number of Employes: 3

Enter the employee number : 101

Enter the name : Raja

Enter the basic pay, allowances & deductions : 40000


2000
1500

Enter the employee number : 102

Enter the name : Sai

Enter the basic pay, allowances & deductions : 35000


2000
1000

Enter the employee number : 103

Enter the name : Tony

Enter the basic pay, allowances & deductions : 25000


1000
500

Emp. No. Name Bpay Allow Ded Npay

101 Raja 40000 2000 1500 40500


102 Sai 35000 2000 1000 36000
103 Tony 25000 1000 500 25500
Ex No 10b Creating Student Details using Structure and Union

Aim:

Write C program to Create Student Details using Structure and


Union.

Algorithm:

Program:

#include<stdio.h>
struct student {
union {
char name[10];
int roll;
};
int mark;
};
int main()
{
struct student stud;
char choice;
printf("\n You can enter your name or roll number ");
printf("\n Do you want to enter the name (y or n): ");
scanf("%c",&choice);
if(choice=='y'||choice=='Y')
{
printf("\n Enter name: ");
scanf("%s",stud.name);
printf("\n Name:%s",stud.name);
}
else
{
printf("\n Enter roll number");
scanf("%d",&stud.roll);
printf("\n Roll:%d",stud.roll);
}
printf("\n Enter marks");
scanf("%d",&stud.mark);
printf("\n Marks:%d",stud.mark);
return 0;
}

Output:

Run 1:

You can enter your name or roll number


Do you want to enter the name (y or n): Y

Enter name: Tony


Name:Tony
Enter marks95

Marks:95

Run 2:

You can enter your name or roll number


Do you want to enter the name (y or n): N

Enter roll number101

Roll:101
Enter marks79

Marks:79

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy