You are on page 1of 80

4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

COLLEGE OF ENGINEERING AND TECHNOLOGY


DEPARTMENT OF SCIENCE AND HUMANITIES

CS8261
C PROGRAMMING LAB MANUAL

NAME ………………
REGISTER NO ………………
DEPARTMENT ………………
YEAR ………………
DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 1
4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

COLLEGE OF ENGINEERING AND TECHNOLOGY

CS8261
C PROGRAMMING LAB MANUAL

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 2


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EXPERIMENTS
PAGE
S.NO DATE PARTICULARS MARK SIGN
NO
 PHASE - I
1. FACTORIAL

2. AREA OF CIRCLE

3. FIBONACCI SERIES

4. LEAP YEAR

5. ARMSTRONG NUMBER

6. SUM OF DIGITS

7. QUADRATIC EQUATION

8. PRIME NUMBER

9. SUM OF N NATURAL NUMBER

10. FINDING SQUARE AND CUBE OF A NUMBER

11. MAXIMUM OF THREE NUMBERS

12. ODD OR EVEN

13. PALINDROME

14. CALCULATOR

15. SUM OF WEIGHTS

16. FINDING AVERAGE HEIGHT

17. BODY MASS INDEX

18. TOWER OF HANOI

19. INCREMENTING THE DATE

20. FINDING NAME OF THE DAY

 PHASE - II
21. MIN AND MAX NUMBER IN AN ARRAY

22. NUMBER CONVERSION

23. ASCENDING ORDER

24. DESCENDING ORDER

25. MATRIX ADDITION

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 3


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PAGE
S.NO DATE PARTICULARS MARK SIGN
NO
26. MATRIX SUBTRACTION
27. TRANSPOSE MATRIX
REVERSE STRING WITHOUT CHANGING
28.
POSITION
29. FINDING TOTAL NUMBER OF WORDS
30. CAPITALIZE THE FIRST WORD
31. REPLACE A WORD WITH ANOTHER WORD
32. SORTING USING PASS BY REFERENCE
33. SWAPING USING PASS BY REFERENCE
34. STRING OPERATIONS
35. SORTING NAMES
36. LOWER CASE TO UPPER CASE
37. DIFFERENCE BETWEEN MAX AND MIN NO.
38. ACCEPT A NUMBER AND PRINT IN WORDS
39. SUBJECT AVERAGE USING UNION
40. STRING CONCATENATION

 PHASE - III
41. FINDING INTERNAL MARK OF A STUDENT
STUDENT DATABASE USING RANDOM
42.
ACCESS FILE
43. PAYROLL PROCESSING
44. TELEPHONE DIRECTORY
45. RAILWAY RESERVATION

COMPLETED/NOT COMPLETED

STAFF INCHARGE SIGN.

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 4


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 5


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EX.NO: 1A /* TO FIND FACTORIAL */ DATE:

AIM:

To find the factorial of the given number.

ALGORITHM:

STEP 1: Start
STEP 2: Read n
STEP 3: Initialize fact=1
STEP 4: for i=1;i<=num;i++
STEP 5: Calculate fact =fact * i
STEP 6: Print fact
STEP 7: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 6


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include<stdio.h>
void main()
{
int fact=1,i,num;
printf("Enter the number: ");
scanf("%d",&num);
for(i=1;i<=num;i++)
{
fact=fact*i;
}
printf("The factorial of %d is: %d",num, fact);
getch();
}

OUTPUT:

Enter the number 5


The factorial of 5 is 120

OBS

REC

VIVA

TOTAL

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 7


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EX.NO: 1B /* TO FIND AREA OF CIRCLE */ DATE:

AIM:

To write a C program to find area and perimeter of circle.

ALGORITHM:

STEP 1: Start
STEP 2: Read Radius
STEP 3: Area -> PI * Radius * Radius, PI=3.14
STEP 4: Per,-> 2*PI * Radius
STEP 5: Print area prem
STEP 6: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 8


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include<stdio.h>
#define PI 3.14
int main()
{
float rad,area,perm;
printf(“Enter radius of circle: ”);
scanf(“%f”,&rad);
area=PI*rad*rad;
perm=2*PI*rad;
printf(“Area of circle: %f \n Perimeter of circle: %f\n”,area,perm);
return 0;
}

OUTPUT:
Enter radius of circle: 2.34

Area of circle: 17.193382

Perimeter of circle: 14.695199

OBS

REC

VIVA

TOTAL

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 9


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EX.NO: 2a /* GENERATING FIBONACCI SERIES */ DATE:

AIM:

To generate Fibonacci of the given number.

ALGORITHM:

STEP 1: Start
STEP 2: Read n
STEP 3: Initialize fib=0,a=0,and b=1
STEP 4: for i=1;i<num;i++
STEP 5: Calculate fib=fib+a
STEP 6: Assign a=b and b=fib
STEP 7: Print fib
STEP 8: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 10


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include<stdio.h>
#include<conio.h>
void main()
{
int num,fib=0,a=0,b=1,i;
clrscr();
printf("Enter the Range: ");
scanf("%d",&num);
printf("FIBBONACI SERIES\n");
if(num==0)
printf("0");
else
{
for(i=0;i<num;i++)
{
fib=fib+a;
a=b;b=fib;
printf("%d\t",fib);
getch();
}
}
}

OUTPUT:

Enter the Range: 10

FIBBONACI SERIES

0 1 1 2 3 5 8 13 21 34

OBS

REC

VIVA

TOTAL

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 11


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EX.NO: 3 /* FINDING LEAP YEAR OR NOT */ DATE:

AIM:

To find the given year is leap year or not

ALGORITHM:

STEP 1: Start
STEP 2: Read year
STEP 3: if year %4 == 0 and year %100 !=0 or year%400 ==0
STEP 4: Print the given year is leap year
STEP 5: else
STEP 6: Print the given year is not a leap year
STEP 7: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 12


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include <stdio.h>
#include <conio.h>
void main()
{
int year;
clrscr();
printf("Enter the Year (YYYY) : ");
scanf("%d",&year);
if(year%4==0 && year%100!=0 || year%400==0)
printf("\nThe Given year %d is a Leap Year");
else
printf("\nThe Given year %d is Not a Leap Year");
getch();
}

OUTPUT: 1

Enter the Year (YYYY) : 2018

The Given year 2018 is Not a Leap Year

OUTPUT: 2

Enter the Year (YYYY): 2020

The Given year 2020 is a Leap Year

OBS

REC

VIVA

TOTAL
RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 13


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EX.NO: 5 /* ARMSTRONG NUMBER */ DATE:

AIM:

To find whether the given number is Armstrong or not.

ALGORITHM:

STEP 1: Start
STEP 2: Initialize the set of values
STEP 3: Read the value n and assign it to temp variable
STEP 4: perform rem=temp%10
Num=num+(rem*rem*rem)
Temp=temp/10
STEP 5: if num==n Print the number is Armstrong
Else
Print the number is not Armstrong
STEP 6: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 14


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM

#include <stdio.h>
#include <conio.h>
void main()
{
int n, n1, rem, num=0; clrscr();
printf("\n ARMSTRONG NUMBER");
printf("Enter a positive integer: ");
scanf("%d", &n);
n1=n;
while(n1!=0)
{
rem=n1%10;
num=num+(rem*rem*rem);
n1=n1/10;
}
if(num==n)
printf("%d is an Armstrong number",n);
else
printf("%d is not an Armstrong number",n);
getch();
}

OUTPUT: 1

ARMSTRONG NUMBER
Enter a positive integer: 371
371 is an Armstrong number

OUTPUT: 2
OBS
ARMSTRONG NUMBER
Enter a positive integer: 125 REC
125 is not an Armstrong number
VIVA

TOTAL

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 15


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

SUM OF DIGITS

#include <stdio.h>

int main()
{
int n, t, sum = 0, remainder;

printf("Enter an integer\n");
scanf("%d", &n);

t = n;

while (t != 0)
{
remainder = t % 10;
sum = sum + remainder;
t = t / 10;
}

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

return 0;
}

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

int main()
{
int a, b, c, d;
double root1, root2;
printf("Enter a, b and c where a*x*x + b*x + c = 0\n");
scanf("%d%d%d", &a, &b, &c);
d = b*b - 4*a*c;
if (d < 0) { //complex roots
printf("First root = %.2lf + j%.2lf\n", -b/(double)(2*a), sqrt(-d)/(2*a));
printf("Second root = %.2lf - j%.2lf\n", -b/(double)(2*a), sqrt(-d)/(2*a));
}
else { //real roots
root1 = (-b + sqrt(d))/(2*a);
root2 = (-b - sqrt(d))/(2*a);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 16


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

printf("First root = %.2lf\n", root1);


printf("Second root = %.2lf\n", root2);
}
return 0;
}

PRIME NUMBER
#include <stdio.h>
int main()
{
int n, i, flag = 0;

printf("Enter a positive integer: ");


scanf("%d", &n);

for(i = 2; i <= n/2; ++i)


{
// condition for nonprime number
if(n%i == 0)
{
flag = 1;
break;
}
}

if (n == 1)
{
printf("1 is neither a prime nor a composite number.");
}
else
{
if (flag == 0)
printf("%d is a prime number.", n);
else
printf("%d is not a prime number.", n);
}

return 0;
}

SUM OF N NATURAL NUMBER


#include <stdio.h>
int main()

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 17


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

{
int n, i, sum = 0;

printf("Enter a positive integer: ");


scanf("%d",&n);

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


{
sum += i; // sum = sum+i;
}

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

return 0;
}

SQUARE AND CUBE OF A NUMBER


#include<stdio.h>
#include<conio.h>
void main()
{
int a,s,c;
clrscr();

printf("\n Enter A Number: ");


scanf("%d",&a);

s=a*a; //Square = number * number


c=s*a; //Cube = Square * number

printf("\n Square of %d is = %d",a,s);

printf("\n\n Cube of %d is = %d",a,c);

getch();
}

MAXIMUM OF 3 NUMBER

#include <stdio.h>
int main()
{

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 18


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

double n1, n2, n3;

printf("Enter three different numbers: ");


scanf("%lf %lf %lf", &n1, &n2, &n3);

if( n1>=n2 && n1>=n3 )


printf("%.2f is the largest number.", n1);

if( n2>=n1 && n2>=n3 )


printf("%.2f is the largest number.", n2);

if( n3>=n1 && n3>=n2 )


printf("%.2f is the largest number.", n3);

return 0;
}

ODD OR EVEN

#include <stdio.h>
int main()
{
int number;

printf("Enter an integer: ");


scanf("%d", &number);

// True if the number is perfectly divisible by 2


if(number % 2 == 0)
printf("%d is even.", number);
else
printf("%d is odd.", number);

return 0;
}

PALINDROME

#include <stdio.h>
int main()
{
int n, reversedInteger = 0, remainder, originalInteger;

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 19


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

printf("Enter an integer: ");


scanf("%d", &n);

originalInteger = n;

// reversed integer is stored in variable


while( n!=0 )
{
remainder = n%10;
reversedInteger = reversedInteger*10 + remainder;
n /= 10;
}

// palindrome if orignalInteger and reversedInteger are equal


if (originalInteger == reversedInteger)
printf("%d is a palindrome.", originalInteger);
else
printf("%d is not a palindrome.", originalInteger);

return 0;
}

EX.NO: 4 /* DESIGN OF CALCULATOR */ DATE:

AIM:

To perform arithmetic operations such as addition, subtraction, multiplication, division, and


power using calculator.

ALGORITHM:

STEP 1: Start
STEP 2: Read first and second number
STEP 3: switch choice
STEP 4: if Choice==1 perform addition
STEP 5: Choice ==2 perform subtraction
Choice==3 perform multiplication
Choice==4 perform division
Choice==5 perform square
STEP 6: Print result
STEP 7: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 20


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include <stdio.h>
#include <conio.h>
void main()
{
int fn,sn,c,result,sq1,sq2;
float r;
char c1;
clrscr();
printf("Enter the First Number : ");
scanf("%d",&fn);
printf("\nEnter the Second Number : ");
scanf("%d",&sn);
{
printf("\nWhich operations you want to perform (+,-,*,/,s)\n");
c=getch();
switch(c)
{
case '+':
{

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 21


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

result = fn+sn;
printf("Sum is %d\n",result);
break;
}
case '-':
{
result = fn-sn;
printf("Difference is %d\n",result);
break;
}
case '*':
{
result = fn*sn;
printf("Multiplication %d\n",result);
break;
}
case '/':
{
result = fn/(float)sn;
printf("Division is %.2f\n",result);

break;
}
case 's':
{
sq1=fn*fn;
printf("First number square is: %d\n",sq1);
sq2 = sn*sn;
printf("Second number square is: %d\n",sq2);
break;
}
}
}
}

OUTPUT

Enter the First Number : 10


Enter the Second Number :5
Which operations you want to perform (+,-,*,/,s)
+
Sum is 10
Which operations you want to perform (+,-,*,/,s)

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 22


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

-
Difference is 5
Which operations you want to perform (+,-,*,/,s)
*
Multiplication 50
Which operations you want to perform (+,-,*,/,s)
/
Division is 2.00
Which operations you want to perform (+,-,*,/,s)
s

First number square is: 100


Second number square is: 25

EX.NO: 6 /* FINDING SUM OF WEIGHTS */ DATE:

AIM:

In the given set of numbers find the numbers which are perfect cube or number with multiples
of 4 and divisible by 6 or a prime number.

ALGORITHM:

STEP 1: Start
STEP 2: Initialize the array as nArray[] and wArray[]
STEP 3: Check for perfect cube if i*i*i==num
STEP 4: Check for prime if num%i==0
STEP 5: Check for multiples of 4 and divisible by 6
if(nArray[i]%4==0 && nArray[i]%6==0)
STEP 6: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 23


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include <stdio.h>
#include <math.h>
void main()
{
int nArray[50],wArray[50],nelem,sq,i,j,t;
clrscr();
printf("\nEnter the number of elements in an array: ");
scanf("%d",&nelem);
printf("\nEnter %d elements: \n",nelem);
for(i=0;i<nelem;i++)
scanf("%d",&nArray[i]);
// SORTING AN ARRAY

for(i=0;i<nelem;i++)
for(j=i+1;j<nelem;j++)
if(nArray[i] > nArray[j])
{
t = nArray[i];
nArray[i] = nArray[j];
nArray[j] = t;
}
//CALCULATE THE WEIGHT
for(i=0; i<nelem; i++)
{
wArray[i] = 0;
if(percube(nArray[i]))
wArray[i] = wArray[i] + 5;
if(nArray[i]%4==0 && nArray[i]%6==0)
DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 24
4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

wArray[i] = wArray[i] + 4;
if(prime(nArray[i]))
wArray[i] = wArray[i] + 3;
}
for(i=0; i<nelem; i++)
printf("<%d,%d>", nArray[i],wArray[i]);
getch();
}
//CALCULATING PRIME NUMBER
int prime(int num)
{
int flag=1,i;
for(i=2;i<=num/2;i++)
if(num%i==0)
{
flag=0;
break;
}
return flag;
}
//CALCULATING PERFECT CUBE
int percube(int num)
{
int i,flag=0;
for(i=2;i<=num/2;i++)
if((i*i*i)==num)
{
flag=1;
break;
}
return flag;
}

OUTPUT:

Enter the number of elements in an array:


Enter 6 elements: 10 36 54 89 12 27

<10,0> <12,4> <27,5> <36,4> <54,0> <89,3>

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 25


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

OBS

REC

VIVA

TOTAL

RESULT:

EX.NO: 7 /* FINDING AVERAGE HEIGHT */ DATE:

AIM:

To find the persons who are above average height.

ALGORITHM:

STEP 1: Start
STEP 2: Initialize sum=0,count=0,height[100]
STEP 3: for i=0 ;i<=n;i++
STEP 4: sum=sum+height[i]
STEP 5: if(height[i]>avg
Then print the number of persons above average
STEP 6: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 26


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM

#include <stdio.h>
#include <conio.h>
void main()
{
int i,n,sum=0,count=0,height[100];
float avg;
clrscr();
printf("Enter the Number of Persons : ");
scanf("%d",&n);
printf("\nEnter the Height of each person in centimeter: \n");
for(i=0;i<n;i++)
{
scanf("%d",&height[i]);
sum = sum + height[i];
}
avg = (float)sum/n;
for(i=0;i<n;i++)
if(height[i]>avg)
count++;
printf("\nAverage Height of %d persons is : %.2f\n",n,avg);
printf("\nThe number of persons above average : %d ",count);
getch();
}

OUTPUT:

OBS

REC

VIVA

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 27


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

Enter the Number of Persons: 4 TOTAL


Enter the Height of each person in centimeter:
170 143 165 160
Average Height of 4 persons is: 159.50
The number of persons above average: 3

RESULT:

EX.NO: 8 /* COMPUTING BODY MASS INDEX */ DATE:

AIM:

To find the persons who are above average height.

ALGORITHM:

STEP 1: Start
STEP 2: Read weight and height
STEP 3: bmi=w/(h*h)
STEP 4: If bmi<18.5
STEP 5: print Underweight
STEP 6: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 28


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM

#include<stdio.h>;
void main()
{
float w,h,bmi;
printf("Enter weight in kgs and height in meters: ");
scanf("%f%f",&w,&h);
bmi=w/(h*h);
printf("bmi: %f",bmi);
bmi<18.5?printf("Underweight"):(bmi<25)?printf("Normal weight"):(bmi<30)?
printf("Overweight"):printf("Obesity");
}

OUTPUT

Enter weight in kgs and height in meters: 53 5.5

Bmi:1.752066 Underweight

OBS

REC

VIVA

TOTAL

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 29


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

RESULT

EX.NO: 12 /* TOWERS OF HANOI */ DATE:

AIM:

To solve towers of Hanoi using recursion.

ALGORITHM:

STEP 1: Start

STEP 2: Procedure Hanoi num,A,B,C

STEP 3: If num=0

STEP 4: Move num from A to disk

STEP 5: else

STEP 6: towers(num-1,frompeg,auxpeg,topeg);

STEP 7: move disk num frompeg to topeg

STEP 8: towers(num-1,auxpeg,topeg,frompeg)

STEP 9: endif

STEP 10: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 30


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

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:

Enter the number of disks: 3


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

Move disk 1 from peg A to peg C


OBS
Move disk 2 from peg A to peg B
Move disk 1 from peg C to peg B REC
Move disk 3 from peg A to peg C
VIVA
Move disk 1 from peg B to peg A
Move disk 2 from peg B to peg C TOTAL
Move disk 1 from peg A to peg C

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 31


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

INCREMENTING DATE
#include <stdio.h>
#include<time.h>
void main()
{
struct tm date = {0} ;
time_t timer;
clrscr();
timer=time(NULL);
date = *gmtime( &timer ) ;
//printf(“%s”,asctime(localtime(&timer)));
printf("%d/%d/%d\n",date.tm_mday-1,date.tm_mon+1,date.tm_year+1900);
date.tm_year = date.tm_year;
date.tm_mon = date.tm_mon;
date.tm_mday = date.tm_mday + 1;
timer = mktime( &date ) ;
date = *gmtime( &timer ) ;
//printf(“%s”,asctime(localtime(&timer)));
printf("%d/%d/%d\n",date.tm_mday-1,date.tm_mon+1,date.tm_year+1900);
getch();
}

NAME OF THE DAY

#include<stdio.h>
#include<conio.h>
void main()
{
int n;
clrscr();
printf("Enter Day No:-> ");
scanf("%d",&n);
switch(n)
{
case 1:
printf("Monday \n");
break;
case 2:
printf("Tuesday \n");
break;
case 3:
printf("Wednesday \n");

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 32


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

break;
case 4:
printf("Thursday \n");
break;
case 5:
printf("Friday \n");
break;
case 6:
printf("Saturday \n");
break;
case 7:
printf("Sunday \n");
break;
default:
printf("invalid day number\nPlease try again ....\n");
break;
}
getch();
}

PHASE – II

MIN AND MAX NUMBER IN AN ARRAY

#include<stdio.h>
int main()
{
int i, n, lar,sm, elem;
printf ("Enter total number of elements \n");
scanf ("%d", &elem);
printf ("Enter first number \n");
scanf ("%d", &n);
lar = n;
sm=n;
for (i=1; i<= elem -1 ; i++)
{
printf ("\n Enter another number \n");
scanf ("%d",&n);
if (n>lar)
lar=n;
if (n<sm)
sm=n;

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 33


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

}
printf ("\n The largest number is %d", lar);
printf ("\n The smallest number is %d", sm);
return 0;
}

EX.NO: 10 /* NUMBER COVNERSION */ DATE:

AIM:

To convert the given decimal number into binary, octal and hexadecimal numbers using user
defined functions

ALGORITHM:

STEP 1:Start

STEP 2: Read the decimal number as num

STEP 3: Use to function binary(num),Octal(num)and hexa(num)

STEP 4: Use to function int convertDecimalToOctal(long long a)

STEP 5: Print decimal and octal numbers in output.txt

STEP 6: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 34


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include<stdio.h>
FILE *FP=NULL;
void main()
{
int ch,num;
void octal(int);
void binary(int);
void hexa(int);
clrscr();
printf("Enter decimal number to be converted : \n");
scanf("%d",&num);
printf("\nselect Conversion");
printf("\n 1. Decimal To Binary\n");
printf("\n 2. Decimal To Octal\n");
printf("\n 3. Decimal To Hexadecimal\n");
printf("\nEnter Your Choice:");
scanf("%d",&ch);
switch(ch)
{
case 1 : binary(num);
printf("\nouput Written To Output.Txt");
break;
case 2 : octal(num);
printf("\nouput Written To Output.Txt");
break;
case 3 : hexa(num);
printf("\nouput Written To Output.Txt");
break;
default : printf("\nYou Have Entered Wrong Choice !!!");
}
getch();
}
void hexa(int y)
{
char hexc[5];
int num,i,n,len,hexd[5];
num=y;

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 35


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

len=0;
while(y>0)

{
hexd[len]=y%16;
y=y/16;
len++;
};
for(i=len-1;i>-1;i--)
{
if(hexd[i]<10)
hexc[i]=hexd[i]+48;
else
hexc[i]=hexd[i]+55;
}
if((FP=fopen("output.txt","a+t"))==NULL)
{
printf("File Can't Be Opened Or Created\n");
exit(0);
}
fprintf(FP,"\nConverted hexa Equivalent Value Of %d is \t",num);
for(i=len-1;i>-1;i--)
{
fprintf(FP,"%c",hexc[i]);
}
}
void binary(int y)
{
int num,i,len,bin[20];
num=y;
len=0;
while(y>0)
{
bin[len]=y%2;
y=y/2;
len++;
};
if((FP=fopen("output.txt","a+t"))==NULL)
{
printf("File Can't Be Opened Or Created\n");
exit(0);
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 36


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

fprintf(FP,"\nConverted Binary Equivalent Value Of %d is \t",num);


for(i=len-1;i>-1;i--)
{

fprintf(FP,"%d",bin[i]);
}
}
void octal(int y)
{
int num,i,len,oct[5];
num=y;
len=0;
while(y>0)
{
oct[len]=y%8;
y=y/8;
len++;
};
if((FP=fopen("output.txt","a+t"))==NULL)
{
printf("File Can't Be Opened Or Created\n");
exit(0);
}
fprintf(FP,"\nConverted Octal Equivalent Value Of %d is \t",num);
for(I=LEN-1;I>-1;I--)
{
fprintf(FP,"%d",oct[i]);
}
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 37


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

OUTPUT:

Converted Binary Equivalent Value Of 10 is 1010


Converted Octal Equivalent Value Of 10 is 12
Converted Binary Equivalent Value Of 10 is A

OBS

REC

VIVA

TOTAL

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 38


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

ASCENDING ORDER

#include <stdio.h>

void sort_numbers_ascending(int number[], int count)


{
int temp, i, j, k;
for (j = 0; j < count; ++j)
{
for (k = j + 1; k < count; ++k)
{
if (number[j] > number[k])
{
temp = number[j];
number[j] = number[k];
number[k] = temp;
}
}
}
printf("Numbers in ascending order:\n");
for (i = 0; i < count; ++i)
printf("%d\n", number[i]);
}
void main()
{
int i, count, number[20];

printf("How many numbers you are gonna enter:");


scanf("%d", &count);
printf("\nEnter the numbers one by one:");

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


scanf("%d", &number[i]);

sort_numbers_ascending(number, count);
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 39


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

DESCENDING ORDER

#include <stdio.h>

void main()
{
int arr1[100];
int n, i, j, tmp;

printf("\n\nsort elements of array in descending 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++)
{
printf("element - %d : ",i);
scanf("%d",&arr1[i]);
}
for(i=0; i<n; i++)
{
for(j=i+1; j<n; j++)
{
if(arr1[i] < arr1[j])
{
tmp = arr1[i];
arr1[i] = arr1[j];
arr1[j] = tmp;
}
}
}

printf("\nElements of array is sorted in descending order:\n");


for(i=0; i<n; i++)
{
printf("%d ", arr1[i]);
}
printf("\n\n");
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 40


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

MATRIX ADDITION
#include <stdio.h>

int main()
{
int m, n, c, d, first[10][10], second[10][10], sum[10][10];

printf("Enter the number of rows and columns of matrix\n");


scanf("%d%d", &m, &n);
printf("Enter the elements of first matrix\n");

for (c = 0; c < m; c++)


for (d = 0 ; d < n; d++)
scanf("%d", &first[c][d]);

printf("Enter the elements of second matrix\n");

for (c = 0; c < m; c++)


for (d = 0; d < n; d++)
scanf("%d", &second[c][d]);

printf("Sum of entered matrices:-\n");

for (c = 0; c < m; c++) {


for (d = 0; d < n; d++) {
sum[c][d] = first[c][d] + second[c][d];
printf("%d\t",sum[c][d]);
}
printf("\n");
}

return 0;
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 41


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

MATRIX SUBTRACTION

#include <stdio.h>

int main()
{
int m, n, c, d, first[10][10], second[10][10], difference[10][10];

printf("Enter the number of rows and columns of matrix\n");


scanf("%d%d", &m, &n);
printf("Enter the elements of first matrix\n");

for (c = 0; c < m; c++)


for (d = 0 ; d < n; d++)
scanf("%d", &first[c][d]);

printf("Enter the elements of second matrix\n");

for (c = 0; c < m; c++)


for (d = 0; d < n; d++)
scanf("%d", &second[c][d]);

printf("Difference of entered matrices:-\n");

for (c = 0; c < m; c++) {


for (d = 0; d < n; d++) {
difference[c][d] = first[c][d] - second[c][d];
printf("%d\t",difference[c][d]);
}
printf("\n");
}

return 0;
}

TRANSPOSE MATRIX

#include <stdio.h>

int main()
{
int m, n, c, d, matrix[10][10], transpose[10][10];

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 42


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

printf("Enter the number of rows and columns of matrix\n");


scanf("%d%d", &m, &n);

printf("Enter elements of the matrix\n");

for (c = 0; c < m; c++)


for(d = 0; d < n; d++)
scanf("%d", &matrix[c][d]);

for (c = 0; c < m; c++)


for( d = 0 ; d < n ; d++ )
transpose[d][c] = matrix[c][d];

printf("Transpose of the matrix:\n");

for (c = 0; c < n; c++) {


for (d = 0; d < m; d++)
printf("%d\t", transpose[c][d]);
printf("\n");
}

return 0;
}

EX.NO: 9 /* REVERSE STRING WITHOUT CHANGING POSITION */ DATE:

AIM:

To print the reverse of a string without changing the position of special characters

ALGORITHM:

STEP 1: Start

STEP 2: Read the input string and special character l,r;

STEP 3: Using the reverse string function

STEP 4: while 1<r

STEP 5: if(! isalpha(s[i]))

STEP 6: elseif(!isalpha(s[r]))

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 43


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

STEP 7: else swap(s[l],s[r])

STEP 8: print string

STEP 9: Stop

PROGRAM:

#include <stdio.h>
#include <string.h>
#include <ctype.h>
void swap(char *a, char *b)
{
char temp = *a;
*a = *b;
*b = temp;
}
void reverse(char *str)
{
char *p1 = str;
char *p2 = str + strlen(str) - 1;
while (p1 < p2) {
while (!isalpha(*p1)) p1++;
while (!isalpha(*p2)) p2--;
if (p1 < p2) {

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 44


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

swap(p1, p2);
p1++;
p2--;
}
}
}
int main(void)
{
char str[6];
strcpy(str, "a$bcd./$ef");
reverse(str);
printf("%s\n", str);
return 0;
} OBS

REC
OUTPUT
VIVA
f$edc./$ba
TOTAL

RESULT:

FINDING TOTAL NUMBER OF WORDS

EX.NO: 11 /* FINDING TOTAL NO OF WORDS */ DATE:

AIM:

To find the total number of words using built In functions.

ALGORITHM:

STEP 1: Start

STEP 2: Read s,count,i;

STEP 3: for i=o; s[i]!= ‘\0’;i++

STEP 4: if s[i]==’’

STEP 5: print count

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 45


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

STEP 6: Endif

STEP 7: endfor

STEP 8: Stop

PROGRAM

#include<stdio.h>
#include<string.h>
void main()
{
char s[200];
int count=0,i;
printf("\n Enter the string: ");
scanf("%l[^\n]s",&s);
for(i=0;s[i]!='\0';i++)
{
if(s[i]== ' ')
count++;
}
printf("Number of words in given string are: %d\n",count+1);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 46


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

OUTPUT:

Enter the string: Welcome to KCET

Numbers of words in given string are: 3

OBS

REC

VIVA

TOTAL

RESULT:

EX.NO: 11a /* CAPITALIZE THE FIRST WORD */ DATE:

AIM

To capitalize the first word of each sentence using built in functions

ALGORITHM

STEP 1: Start

STEP 2: Read string str,i;

STEP 3: for i=0;str[i]!=’\0’;i++

STEP 4: if((str[i]>=’a’ && str[i]<=’z’))

STEP 5: str[i]=str[i]-32

STEP 6: end if

STEP 7: else if(str[i]>=’A’ && str[i]<=’Z’)

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 47


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

STEP 8: str[i]=str[i]-32

STEP 9: elseif(str[i]>=’A’ && str[i]<=’Z’)

STEP 10: str[i]=str[i]+32

STEP 11: END ELSEIF

STEP 12: Print the string

STEP 13: Stop

PROGRAM

#include<stdio.h>
#define MAX 100
int main()
{
char str[MAX]={0};
int i;
printf("Enter a string:");
scanf("%l[^\n]s",str);
for(i=0;str[i]!='\0';i++)
{
if(i==0)
{
if((str[i]>='a'&&str[i]<='z'))
str[i]=str[i]-32;
continue;
}
if(str[i]==' ')

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 48


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

{
++i;
if(str[i]>='a'&& str[i]<='z')
{
str[i]=str[i]-32;
continue;
}
}
else
{
if(str[i]>='A' && str[i]<='Z')
str[i]=str[i]+32;
}
}
printf("Capitalize string is: %s\n",str);
return 0;
}

OUTPUT:

Enter a string: engineers are the king makers

Capitalize string is: Engineers Are The King Makers

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 49


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

OBS

REC

VIVA

TOTAL

RESULT:

EX.NO: 11b /* REPLACE A WORD WITH ANOTHER WORD */ DATE:

AIM:

To replace a word with another word.

ALGORITHM:

STEP 1: Start

STEP 2: Read char result

STEP 3: Use to function result =replaceWord(str,c,d);

STEP 4: Print new string

STEP 5: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 50


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM:

#include <stdio.h>
#include <string.h>
#include<conio.h>
void main()
{
char text[100],word[10],rpwrd[10],str[10][10];
int i=0,j=0,k=0,w,p;
clrscr();
printf(“\n Enter any Text: “);
gets(text);
printf("\n Enter which word to be replaced\n");
scanf("%s",word);
printf("\n Enter the word %s to be replaced \n",word);
scanf("%s",rpwrd);
p=strlen(text);
for (k=0; k<p; k++)
{
if (text[k]!=' ')
{
str[i][j] = text[k];
j++;
}
else
{
str[i][j]='\0';
j=0;
DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 51
4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

i++;
}
}
str[i][j]='\0';
w=i;
for (i=0; i<=w; i++)
{
if(strcmp(str[i],word)==0)
strcpy(str[i],rpwrd);
printf("%s ",str[i]);
}
getch();
}

OUTPUT:
Welcome was CSE department
Enter which word to be replaced
was
Enter the word was to be replaced
To
Welcome To CSE department

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 52


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

OBS

REC

VIVA

TOTAL

RESULT:

SWAP USING PASS BY REFERENCE

#include <stdio.h>

int main()

int x, y, t;

printf("Enter two integers\n");

scanf("%d%d", &x, &y);

printf("Before Swapping\nFirst integer = %d\nSecond integer = %d\n", x, y);

t = x;

x = y;

y = t;

printf("After Swapping\nFirst integer = %d\nSecond integer = %d\n", x, y);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 53


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

return 0;

STRING OPERATION

#include <stdio.h>

#include<conio.h>

#include<string.h>

#include<ctype.h>

#include<stdlib.h>

int length(char str[]);

void reverse(char str[]);

int palindrome(char str[]);

void copy(char str1[], char str2[]);

int compare(char str1[], char str2[]);

void concat(char str1[], char str2[]);

void search(char str1[], char str2[]);

void count(char str1[]);

void main() {

char a[100], b[100];

int result, option;

do {

printf("\n1.Length of a string");

printf("\n2.Reverse the Given String");

printf("\n3.Check for Palindrome");

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 54


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

printf("\n4.Copy");

printf("\n5.String Comparison");

printf("\n6.String Concatenation");

printf("\n7.String Searching");

printf("\n8.Counting of Words,Characters & Special Characters");

printf("\n9.Quit");

printf("\n\nEnter Your Choice:");

scanf("%d", &option);

flushall();

switch (option) {

case 1:

printf("\nEnter a String:");

gets(a);

result = length(a);

printf("\nLength of %s=%d", a, result);

printf("\nPress a Character");

getch();

break;

case 2:

printf("\nEnter a String:");

gets(a);

reverse(a);

printf("\nResult=%s", a);

printf("\nPress a Character");

getch();

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 55


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

break;

case 3:

printf("\n Enter a String:");

gets(a);

result = palindrome(a);

if (result == 0)

printf("\nNot a palindrome");

else

printf("\nA palindrome");

printf("\nPress a Character");

getch();

break;

case 4:

printf("\nEnter a String:");

gets(a);

copy(b, a);

printf("\nResult=%s", b);

printf("\nPress a Character");

getch();

break;

case 5:

printf("\nEnter 1st string:");

gets(a);

printf("\nEnter 2nd string:");

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 56


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

gets(b);

result = compare(a, b);

if (result == 0)

printf("\nboth are same");

else if (result > 0)

printf("\n1st>2nd");

else

printf("\n1st<2nd");

printf("\nPress a Character");

getch();

break;

case 6:

printf("\nEnter 1st string:");

gets(a);

printf("\nEnter 2nd string:");

gets(b);

concat(a, b);

printf("\nresult=%s", a);

printf("\nPress a Character");

getch();

break;

case 7:

printf("\nEnter 1st string:");

gets(a);

printf("\nEnter 2nd string:");

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 57


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

gets(b);

search(a, b);

printf("\nPress a Character");

getch();

break;

case 8:

printf("\nEnter a string:");

gets(a);

count(a);

printf("\nPress a Character");

getch();

break;

default:

printf("\nInvalid Choice:");

break;

} while (option != 9);

int length(char str[]) {

int i = 0;

while (str[i] != '\0')

i++;

return (i);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 58


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

void reverse(char str[]) {

int i, j;

char temp;

i = j = 0;

while (str[j] != '\0')

j++;

j--;

while (i < j) {

temp = str[i];

str[i] = str[j];

str[j] = temp;

i++;

j--;

int palindrome(char str[]) {

int i, j;

i = j = 0;

while (str[j] != '\0')

j++;

while (i < j) {

if (str[i] != str[j - 1])

return (0);

i++;

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 59


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

j--;

return (1);

void copy(char str2[], char str1[]) {

int i = 0;

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

str2[i] = str1[i];

i++;

str2[i] = '\0';

int compare(char str1[], char str2[]) {

int i;

i = 0;

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

if (str1[i] > str2[i])

return (1);

if (str1[i] < str2[i])

return (-1);

i++;

return (0);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 60


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

void concat(char str1[], char str2[]) {

int i, j;

i = 0;

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

i++;

for (j = 0; str2[j] != '\0'; i++, j++)

str1[i] = str2[j];

str1[i] = '\0';

void search(char str1[], char str2[]) {

int i, j, lena, lenb;

for (lena = 0; str1[lena] != '\0'; lena++);

for (lenb = 0; str2[lenb] != '\0'; lenb++);

for (i = 0; i <= lena - lenb + 1; i++) {

for (j = 0; str1[i + j] == str2[j] && str2[j] != '\0'; j++);

if (str2[j] == '\0')

printf("\nString found at location : %d", i + 1);

void count(char str[]) {

int words = 0, characters = 0, spchar = 0, i;

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

if (isalnum(str[i]) && (i == 0 || !isalnum(str[i - 1])))

words++;

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 61


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

characters++;

if (!isalnum(str[i]) && !isspace(str[i]))

spchar++;

printf("\nNo of characters = %d", characters);

printf("\nNo of special characters = %d", spchar);

printf("\nNo of words = %d", words);

SORTING NAMES

#include<stdio.h>

#include<string.h>

int main(){

int i,j,count;

char str[25][25],temp[25];

puts("How many strings u are going to enter?: ");

scanf("%d",&count);

puts("Enter Strings one by one: ");

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

gets(str[i]);

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

for(j=i+1;j<=count;j++){

if(strcmp(str[i],str[j])>0){

strcpy(temp,str[i]);

strcpy(str[i],str[j]);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 62


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

strcpy(str[j],temp);

printf("Order of Sorted Strings:");

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

puts(str[i]);

return 0;

LOWER CASE TO UPPER CASE

#include <stdio.h>

#include <string.h>

int main()

char string[1000];

printf("Input a string to convert to lower case\n");

gets(string);

printf("The string in lower case: %s\n", strlwr(string));

return 0;

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 63


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

ACCEPT A NO AND PRINT IN WORDS

#include <stdio.h>

int main()

int n, num = 0;

//Reading a number from user

printf("Enter any number to print in words: ");

scanf("%d", &n);

while(n != 0)

num = (num * 10) + (n % 10);

n /= 10;

//print corresponding digit in words till num becomes 0

while(num != 0)

switch(num % 10)

case 0: printf("zero ");

break;

case 1: printf("one ");

break;

case 2: printf("two ");

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 64


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

break;

case 3: printf("three ");

break;

case 4: printf("four ");

break;

case 5: printf("five ");

break;

case 6: printf("six ");

break;

case 7: printf("seven ");

break;

case 8: printf("eight ");

break;

case 9: printf("nine ");

break;

num = num / 10;

return 0;

SORTING NAMES

#include<stdio.h>

#include<string.h>

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 65


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

int main(){

int i,j,count;

char str[25][25],temp[25];

puts("How many strings u are going to enter?: ");

scanf("%d",&count);

puts("Enter Strings one by one: ");

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

gets(str[i]);

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

for(j=i+1;j<=count;j++){

if(strcmp(str[i],str[j])>0){

strcpy(temp,str[i]);

strcpy(str[i],str[j]);

strcpy(str[j],temp);

printf("Order of Sorted Strings:");

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

puts(str[i]);

return 0;

PHASE – III

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 66


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

EX.NO: 14 /* PAYROLL PROCESING */ DATE:

AIM:

To generate pay slip for an employee using structures and pointers

ALGORITHM

STEP 1: Start

STEP 2: Read empname,empis and basic pay

STEP 3: Calculate basic=emp.bsal;


hra=basic*.10;
da=basic*.35;
tds=basic*.15;
gross=basic+hra+da;
net=gross-tds

STEP 4: Print the salary details

STEP 5: Stop

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 67


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

PROGRAM

#include<stdio.h>
#include<string.h>
#include<conio.h>
union employee
{
char ename[30];
int eno;
float bsal;
};
void main()
{
union employee emp; char name[30];
int id;
float basic,hra,da,tds,net,gross; clrscr();
printf("\Employee Payroll Processing\n");
printf("\----------------------------------\n");
printf("\nDetails of the Employee\n\n");
printf("\nEnter the Employee Name: ");
scanf("%s",emp.ename);
strcpy(name,emp.ename);
printf("\nEnter the Employee Id: ");
scanf("%d",&emp.eno);
id=emp.eno;
printf("\nEnter the Basic Salary: ");
scanf("%f",&emp.bsal);
basic=emp.bsal;
hra=basic*.10;
da=basic*.35;
tds=basic*.15;
gross=basic+hra+da;
net=gross-tds;
printf("\n\nSALARY DETAILS FOR THE MONTH\n");
printf("\n------------------------------------------------------\n");
printf("\n\nEmployee Name\t: %s",name);
printf("\n\nEmployee No.\t: %d",id);
printf("\n\nBasic salary\t: %.2f",basic);
printf("\n\nHRA\t\t: %.2f",hra);
printf("\n\nDA\t\t: %.2f",da);
printf("\n\nTDS\t\t: %.2f",tds);
printf("\n\nGross Salary\t: %.2f",gross);
printf("\n\nNet Salary\t: %.2f",net);
getch();
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 68


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

OUTPUT:

Employee Payroll Processing

Details of the Employee

Enter the Employee Name: Ram

Enter the Employee Id: 101

Enter the Basic Salary: 15000

SALARY DETAILS FOR THE MONTH

----------------------------------------------------

Employee Name: Ram


Employee No .: 101
Basic salary : 15000.00
HRA : 1500.00
DA : 5250.00
TDS : 2250.00
Gross Salary : 21750.00
Net Salary : 19500

OBS

REC

VIVA

TOTAL

RESULT:

EX.NO: 16 /* TELEPHONE DIRECTORY */ DATE:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 69


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

AIM:

To insert, update, delete and append telephone details of an individual or a company into a
telephone directory using random access file

ALGORITHM

STEP 1: Start

STEP 2: Read name[20],telno,choice;

STEP 3: switch(choice)

STEP 4: Show all data fp=fopen(“data.txt”,”r’);

STEP 5: Find all datas if(totrec==0)

STEP 6: Print total records

STEP 7: Stop

PROGRAM

#include <stdio.h>
#include <conio.h>

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 70


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

#include <string.h>

struct person{
char name[20];
long telno;
};
void appendData(){
FILE *fp;
struct person obj;
clrscr();
fp=fopen("data.txt","a");
printf("*****Add Record****\n");
printf("Enter Name : ");
scanf("%s",obj.name);
printf("Enter Telephone No. : ");
scanf("%ld",&obj.telno);
fprintf(fp,"%20s %7ld",obj.name,obj.telno);
fclose(fp);
}
void showAllData()
{
FILE *fp;
struct person obj;
clrscr();
fp=fopen("data.txt","r");
printf("*****Display All Records*****\n");
printf("\n\n\t\tName\t\t\tTelephone No.");
printf("\n\t\t=====\t\t\t===============\n\n");
while(!feof(fp))
{
fscanf(fp,"%20s %7ld",obj.name,&obj.telno);
printf("%20s %30ld\n",obj.name,obj.telno);
}
fclose(fp);
getch();
}
void findData(){
FILE *fp;
struct person obj;
char name[20];
int totrec=0;
clrscr();
fp=fopen("data.txt","r");

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 71


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

printf("*****Display Specific Records*****\n");


printf("\nEnter Name : ");
scanf("%s",&name);
while(!feof(fp))
{
fscanf(fp,"%20s %7ld",obj.name,&obj.telno);
if(strcmpi(obj.name,name)==0){
printf("\n\nName : %s",obj.name);
printf("\nTelephone No : %ld",obj.telno);
totrec++;
}
}
if(totrec==0)
printf("\n\n\nNo Data Found");
else
printf("\n\n===Total %d Record found===",totrec);
fclose(fp);
getch();
}
void main()
{
char choice;
while(1)
{
clrscr();
printf("*****TELEPHONE DIRECTORY*****\n\n");
printf("1) Append Record\n");
printf("2) Find Record\n");
printf("3) Read all record\n");
printf("4) Exit\n");
printf("Enter your choice : ");
fflush(stdin);
choice = getche();
switch(choice){
case'1' : appendData();
break;

case'2' :
findData();
break;
case'3' : showAllData();

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 72


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

break;
case'4' : exit();
}
}
}

OUTPUT

*****TELEPHONE DIRECTORY*****
1) Append Record
2) Find Record
3) Read all record
4) Exit
Enter your choice : 1

*****Add Record****
Enter Name : ram
Enter Telephone No. : 9521743851

*****TELEPHONE DIRECTORY*****
1) Append Record
2) Find Record
3) Read all record
4) Exit
Enter your choice : 1

*****Add Record****
Enter Name : srivani
Enter Telephone No. : 9685427162

*****TELEPHONE DIRECTORY*****
1) Append Record
2) Find Record
3) Read all record
4) Exit
Enter your choice : 1

*****Add Record****
Enter Name : Sushmitha
Enter Telephone No. : 8514357490

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 73


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

*****TELEPHONE DIRECTORY*****
1) Append Record
2) Find Record
3) Read all record
4) Exit
Enter your choice : 2

*****Display Specific Records*****


Enter Name : srivani
Name : srivani
Telephone No : 9685427162

Total 1 Record found

*****TELEPHONE DIRECTORY*****
1) Append Record
2) Find Record
3) Read all record
4) Exit
Enter your choice : 3

*****Display All Records*****

Name Telephone No.


OBS
Ram 9521743851
REC
Srivani 9685427162
VIVA
Sushmitha 8514357490 TOTAL

RESULT:

EX.NO: 18 /*RAILWAY RESERVATION*/ DATE:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 74


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

MINI PROJECT

AIM:

To create a railway reservation system with following modules,

Booking

Availability checking

Cancellation

Prepare Chart

ALGORITHM

STEP 1: Start

STEP 2: Read the choice,seat,name,age,char,sex

STEP 3: Use to function add(),printset(),delete()

STEP 4: Ticket to ad function

STEP 5: Read input1,input2

STEP 6: if a->seat>70

STEP 7: Print Train full

STEP 8: elseif a->seat >50

STEP 9: Print waiting available

STEP 10: if input2==1 return

STEP 11: Print the name, age, sex, seat;

STEP 12: endif

STEP 13: Ticket to print seat

STEP 14: if temp->seat->50

STEP 15: Print waiting seat

STEP 16: else print confirm seat

STEP 17: endif

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 75


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

STEP 18: Delete function

STEP 19: Read input,tep a->next

STEP 20: Enter the seat number

STEP 21: while a1=NULL && a->seat !=input

STEP 22: Print cannot delete

STEP 23: end while

STEP 24: Stop

PROGRAM:

#include<stdio.h>

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 76


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

#include<stdlib.h>
typedef struct node
{
int seat;
char name[15];
int age;
char sex;
struct node* next;
}list,*ptr;
void delete(ptr a);
void add(ptr a);
void printseat(ptr temp);
void print(ptr a);
void delete(ptr a);
int main()
{
int i,input;
ptr a;
a=(ptr)malloc(1*sizeof(list)); // dummy node
a->next=NULL;
a->seat=0;
for(i=0;i<100;i++)
{
printf(“\n 1 Book a ticket \n2 Deleting a TICKET \n3 Print the chart \n4 Exit the loop \n");
scanf("%d",&input);
if(input==1)
{
add(a);
}
else if(input==2)
{
delete(a);
}
else if(input==3)
{
print(a);
}
else if(input==4)
{
break;
}
else
{
printf("not able to recognise the command \n");
}

}
printf("thank you \n");
return 0;
}

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 77


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

void add(ptr a)
{
int input,input2;
ptr temp=NULL;
while(a->next!=NULL)
{
a=a->next;
}
if(a->seat>70)
{
printf("train full \n");
return ;
}
else if(a->seat>50)
{
printf("%d waiting available \n",(a->seat)-50);
printf("enter 1 to exit 0 to continue ");
scanf("%d",&input2);
if(input2==1)
{
return ;
}
}
temp=(ptr)malloc(1*sizeof(list));
temp->next=NULL;
printf("enter name ");
scanf("%s",temp->name);
printf("enter age ");
scanf("%d",&temp->age);
printf("enter sex ");
scanf("%s",&temp->sex);
temp->seat=(a->seat)+1;
printf("Enter 1 to print the ticket \n 0 for not to print the ticket \n");
scanf("%d",&input);
if(input==1)
{
printseat(temp);
}
a->next=temp;
return ;
}
void printseat(ptr temp)
{
if(temp->seat>50)
{
printf("WL=%d",(temp->seat)-50);
}
Else
{
printf("confirm seat=%d",temp->seat);

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 78


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

}
printf(" name=%s ",temp->name);
printf("sex=%c ",temp->sex);
printf("age=%d \n",temp->age);
return ;
}
void print(ptr a)
{
a=a->next;
while(a!=NULL)
{
printf("seat number=%d,name=%s ,age=%d,sex=%c \n",a->seat,a->name,a->age,a->sex);
a=a->next;
}
return ;
}
void delete(ptr a)
{
int input;
ptr temp;
a=a->next;
printf("enter the seat number ");
scanf("%d",&input);
while(a!=NULL&&(a->seat)!=input)
{
a=a->next;
}
if(a==NULL)
{
printf("can not delete \n");
return ;
}
temp=a;
a=a->next;
free(temp);
while(a!=NULL)
{
a->seat=a->seat-1;
a=a->next;
}
printf("seat deleted \n");
return ;
}

OUTPUT:

1 Book a ticket

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 79


4213 – KCET CS8261-C PROGRAMMING LAB MANUAL R-2017

2 Deleting a TICKET
3 Print the chart
4 Exit the loop
Enter name:Ram
Enter age:20
Enter sex:male
Enter 1 to print the ticket
0 for not to print the ticket
0
1 Book a ticket
2 Deleting a TICKET
3 Print the chart
4 Exit the loop
1
Enter name:Balaji
Enter age:50
Enter sex:male
Enter 1 to print the ticket
0 for not to print the ticket

1 Book a ticket
2 Deleting a TICKET
3 Print the chart
4 Exit the loop
3
Seat number=1,name=Ram,age=20,sex=male
Seat number=2,name=Balaji,age=50,sex=male
OBS

REC

VIVA

TOTAL

RESULT:

DEPARTMENT OF SCIENCE AND HUMANITIES – CSE - II - SEMESTER Page 80

You might also like