Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
302 views

C Programming Lab (JNTUK)

The document contains source code for 16 programs in C programming. The programs cover concepts like temperature conversion, grade calculation, digit sum, Fibonacci series, prime numbers, quadratic equation, factorial, GCD, distance formula, calculator, matrix addition, matrix multiplication, string insertion. For each program, the aim, algorithm and source code is provided.

Uploaded by

Saiindra Reddy
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
302 views

C Programming Lab (JNTUK)

The document contains source code for 16 programs in C programming. The programs cover concepts like temperature conversion, grade calculation, digit sum, Fibonacci series, prime numbers, quadratic equation, factorial, GCD, distance formula, calculator, matrix addition, matrix multiplication, string insertion. For each program, the aim, algorithm and source code is provided.

Uploaded by

Saiindra Reddy
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

www.jntuworld.com I.B.

TECH - CSE C Programming Lab Page |1

Program No: 1

Aim: To convert the temperature from Fahrenheit to Celsius. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |2

Source Code: #include <stdio.h> main( ) { float c,f; printf( Enter the temperature in Fahrenheit: ); scanf(%f, &f); c=(f-32)/1.8; printf(\n The temperature in Celsius is: %f, c); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |3

Program No: 2

Aim: To calculate the total marks obtained by a student in four subjects and verify to which grade the student belongs. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |4

Source Code: #include <stdio.h> main( ) { int m1,m2,m3,m4,total,avg; char grade; clrscr( ); printf( Enter 4 subjects marks: ); scanf(%d %d %d %d, &m1, &m2, &m3, &m4); total=m1+m2+m3+m4; avg=total/4; printf(\n Total marks: %d, total); printf(\n Average marks: %d, avg); if(avg>=90) grade=A; else if(avg>=80) grade=B; else if(avg>=70) grade=C; else if(avg>=60) grade=D; else grade=F; printf(\n The grade = %c, grade); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |5

Program No: 3

Aim: To find the sum of individual digits of a positive integer. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |6

Source Code: #include <stdio.h> main( ) { int n, sum; sum = 0; printf( Enter a positive integer: ); scanf(%d, &n); while(n>0) { sum = sum + n%10; n = n/10; } printf(\n Sum of the digits of the given integer is: %d, sum); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |7

Program No: 4

Aim: To generate the first n terms of the sequence (Fibonacci sequence). Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |8

Source Code: #include<stdio.h> main( ) { int a=0,b=1,n,c; printf("Enter any number: "); scanf("%d",&n); printf("\n The Fibonacci numbers are . . . .:"); printf("\n %3d%3d",a,b); c=a+b; while(c<=n) { printf("%3d,c); a=b; b=c; c=a+b; } getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab Page |9

Program No: 5

Aim: To generate all the prime numbers between 1 and n, where n is a value supplied by the user. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 10

Source Code: #include<stdio.h> main( ) { int n,i,t; printf(Enter a value: ); scanf(%d,&n); printf(\n Prime numbers between 1 to %d are: \n, n); for(i=1;i<=n;i++) { t = 0; for(j=1;j<=i;j++) { if(i%j = = 0) t++; } if(t = = 2) printf(%4d,i); } getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 11

Program No: 6

Aim: To check a given integer is Fibonacci number or not. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 12

Source Code: #include<stdio.h> #include<conio.h> #include<stdlib.h> main( ) { int f1=0,f2=1,f3,n,i; clrscr( ); printf("Enter any number: "); scanf("%d",&n); for(i=1;i<=n;i++) { f3=f1+f2; f1=f2; f2=f3; if(f3= =n) { printf(\n %d is a Fibonacci number,n); exit(0); } } printf(\n %d is not a Fibonacci number,n); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 13

Program No: 7

Aim: To find the roots of a quadratic equation. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 14

Source Code: #include<stdio.h> #include<conio.h> #include<math.h> main( ) { float a,b,c,r1,r2; clrscr( ); printf("Enter the three values:"); scanf("%f%f%f",&a,&b,&c); if(a!=0) { if(b*b>4*a*b*c) { r1=-b+sqrt(b*b-4*a*c)/2*a; r2=-b-sqrt(b*b-4*a*c)/2*a; printf("\n roots are real"); printf("\n r1=%f\n r2=%f",r1,r2); } else printf("\n roots are imaginary"); } else printf("\n roots are linear"); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 15

Program No: 8

Aim: To find the factorial of a given integer. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 16

Source Code: #include <stdio.h> main( ) { int n,fact; printf(Enter a value: ); scanf(%d,&n); fact = n; while(n>1) { fact = fact*(n-1); n--; } printf(\n Factorial of a given number is %d,fact); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 17

Program No: 9

Aim: To find the GCD (greatest common divisor) of two given integers. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 18

Source Code: #include <stdio.h> main( ) { int a,b,gcd,temp; printf(Enter two numbers:); scanf(%d%d,&a,&b); while(1) { if(b= =0) { gcd = a; break; } temp = a%b; a = b; b = temp; } printf( \n GCD is: %d,gcd); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 19

Program No: 10

Aim: To find the distance traveled by a vehicle using the formula S = ut+ at2. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 20

Source Code: #include<stdio.h> #include<conio.h> #include<math.h> main( ) { float s,u,t,a; clrscr( ); printf("\n\n Enter the time interval value in seconds:); scanf(f,&t); printf(\n Enter the acceleration value in m/(sec square):); scanf(%f,&a); printf(\n Enter the initial velocity value in m/sec:); scanf(%f,&u); s=(u*t)+(0.5*a*t*t); printf(\n The distance traveled in meters is: %f\n,s); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 21

Program No: 11

Aim: To read two integer operands and one operator from the user and perform the operation and then print the result using switch statement. Algorithm:

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 22

Source Code: #include<stdio.h> main( ) { int x,y,rst; char opt; printf("Enter first number:"); scanf("%d",&x); printf("\n Enter second number:"); scanf("%d",&y); getchar( ); printf("\n Enter your option + - X / %% : "); scanf("%c",&opt); switch(opt) { case '+': rst=x+y; break; case '-': rst=x-y; break; case '*': rst=x*y; break; case '/': rst=x/y; break; case '%': rst=x%y; break; default: printf("\n No operation"); break; } printf( %d %c %d = %d\n,x,opt,y,rst); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 23

Program No: 12

Aim: To find both the largest and smallest number in a list of integers. Source Code: #include <stdio.h> main( ) { int a[10],small,lar,i; printf(Enter 10 integers : \n); for(i=0;i<10;i++) { printf(\n Enter a[%d] value : ,i); scanf(%d,&a[i]); } small=a[0]; lar = a[0]; for(i=1;i<10;i++) { if(a[i]>lar) lar = a[i]; if(a[i]<small) small = a[i]; } printf(\n Largest integer is : %d,lar); printf(\n Smallest integer is : %d,small); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 24

Program No: 13

Aim: To find the addition of two matrices. Source Code: #include<stdio.h> main( ) { int a[5][5], b[5][5], c[5][5]; int i,j,row,col; clrscr( ); /* Collecting the number of rows and number of columns */ printf("Enter number of rows: "); scanf("%d",&row); printf("\n Enter number of columns: "); scanf("%d",&col); /* First Matrix Reading */ for(i=0;i<row;i++) { for(j=0;j<col;j++) { printf("\n Enter a[%d][%d] = ",i+1,j+1); scanf("%d",&a[i][j]); } } /* Second Matrix Reading */ for(i=0;i<row;i++) { for(j=0;j<col;j++) { printf("\n Enter b[%d][%d] = ",i+1,j+1); scanf("%d",&b[i][j]); } } /* Addition of First and Second Matrices */ for(i=0;i<row;i++) for(j=0;j<col;j++) c[i][j]=a[i][j]+b[i][j];

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 25

/* Printing the resultant matrix */ for(i=0;i<row;i++) { for(j=0;j<col;j++) printf("%3d",a[i][j]); printf("\t\t"); for(j=0;j<col;j++) printf("%3d",b[i][j]); printf("\t\t"); for(j=0;j<col;j++) printf("%3d",c[i][j]); printf("\n"); } }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 26

Program No: 14

Aim: To find the multiplication of two matrices. Source Code: #include<stdio.h> #include<conio.h> main( ) { int A[3][3], B[3][2], C[3][2], i, j, k; clrscr(); printf("\n Enter A Matrix values:"); for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("\n Enter A[%d][%d] value:,i+1,j+1); scanf ("%d",&A[i][j]); } } printf("\n Enter B Matrix values:"); for(i=0;i<3;i++) { for(j=0;j<2;j++) { printf("\n Enter B[%d][%d] value:,i+1,j+1); scanf ("%d",&B[i][j]); } } /* Calculating the product of two Matrix */ for(i=0;i<3;i++) { for(j=0;j<2;j++) { C[i][j]=0; for(k=0;k<3;k++) C[i][j]+=A[i][k]*B[k][j]; } }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 27

/* Print the resultant C Matrix */ printf( The resultant Matrix is: \n); for(i=0;i<3;i++) { for(j=0;j<2;j++) printf("\t%d",C[i][j]); printf("\n"); } getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 28

Program No: 15

Aim: To insert a sub-string in to given main string from a given position. Source Code: #include<stdio.h> #include<string.h> main( ) { char mainstr[100], insstr[30], temp[50]; int l1, l2, l, i, j, pos; clrscr(); printf("Enter main String:"); gets(mainstr); l1=strlen(mainstr); printf("\n Enter the string to be inserted: "); gets(insstr); printf("\n Enter the position to be inserted: "); scanf("%d",&pos); l2=strlen(insstr); if(pos>l1) { for(i=0;i<l2;i++) mainstr[l1++]=insstr[i]; printf("\n After inserting the string is: "); puts(mainstr); } else { for(i=0;i<pos;i++) temp[i]=mainstr[i]; for(j=0;j<l2;j++,i++) temp[i]=insstr[j]; for(j=pos;j<l1;j++,i++) temp[i]=mainstr[j]; temp[i]=NULL; printf("\n After insertion the string is: "); puts(temp); } }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 29

Program No: 16

Aim: To delete n characters from a given position in a given string. Source Code: #include<stdio.h> #include<string.h> main( ) { char str[100]; int l, i, j, pos, del; clrscr( ); printf("Enter a String:"); gets(str); l=strlen(str); printf("\n Enter how many characters you want to delete: "); scanf("%d",&del); printf("\n Enter the position to delete: "); scanf("%d",&pos); if(pos>l) printf("\n Deletion is not possible"); else { j=pos; for(i=pos+del;i<=l;i++,j++) str[j]=str[i]; str[j]=NULL; } printf("\n After deletion the string is: "); puts(str); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 30

Program No: 17

Aim: To determine if the given string is a palindrome or not. Source Code: #include <stdio.h> #include <string.h> main( ) { char str[20]; int len,flag=1,i,l; printf( Enter a string : ); scanf(%s,str); len = strlen(str); l=len-1; for(i=0;i<len/2;i++) { if(str[i] != str[l i]) flag = 0; } if(flag= =1) printf(\n Given string is palindrome); else printf(\n Given string is not a palindrome); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 31

Program No: 18

Aim: To display the position or index in the string S where the string T begins, or 1 if S doesnt contain T. Source Code: #include <stdio.h> #include <string.h> main( ) { char S[100], T[100], *pos; int posn; printf("Enter the main string: "); scanf("%s",S); printf("\n Enter the substring:); scanf(" %s",T); pos=strstr(S,T); if(pos) posn = pos - S + 1; else posn = -1; printf("\n %s found in %s at position %d",T,S,posn); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 32

Program No: 19

Aim: To count the lines, words and characters in a given text. Source Code: #include<stdio.h> main( ) { char str[80], c; int i=0, wc=1, lc=1; printf("Enter a string ending with # : \n"); c=getchar( ); while(c!='#') { str[i]=c; i++; c=getchar( ); } str[i]='\0'; i = 0; while(str[i]!='\0') { if(str[i]=='\n') { lc++; wc++; } else { if(str[i]==' '&&str[i+1]!=' ') wc++; } i++; } printf("\n The Character count is: %d",i); printf("\n The word count is: %d",wc); printf("\n The line count is: %d",lc); getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 33

Program No: 20

Aim: To find the factorial of a given integer using recursive function. Source Code: #include<stdio.h> void main( ) { int n, rst; int fact(int); printf("Enter any number:"); scanf("%d",&n); rst=fact(n); printf("\n Factorial of %d is:%d\n",n,rst); } int fact(int x) { if(x==0) return 1; else return(x*fact(x-1)); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 34

Program No: 21

Aim: To find the GCD (greatest common divisor) of two given integers using recursive function. Source Code: #include<stdio.h> void main( ) { int a, b, rst; int gcd(int,int); clrscr( ); printf(" Enter first number:"); scanf("%d",&a); printf("\n Enter second number:"); scanf("%d",&b); rst=gcd(a,b); printf("\n GCD of %d and %d is : %d",a,b,rst); getch( ); } int gcd(int x, int y) { if(y==0) return x; else return(gcd(y,x%y)); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 35

Program No: 22

Aim: To exchange two integers using passing by address (call by reference). Source Code: #include<stdio.h> #include<conio.h> main( ) { int x,y, change( int *, int *); clrscr( ); printf(\n Enter values of x and y:); scanf(%d %d, &x,&y); change(&x,&y); printf(\n In main( ) x=%d y=%d,x,y); return 0; } change(int *a, int *b) { int *k; *k=*a; *a=*b; *b=*k; printf(\n In change( ) x=%d y=%d,*a,*b); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 36

Program No: 23

Aim: To read in two numbers, x and n, and then compute the sum of this geometric progression:1+x+x2+x3+.+xn Source Code: #include<stdio.h> #include<conio.h> #include<math.h> void main( ) { int s_sum,i,x,n; clrscr(); printf("Enter the values for x and n:"); scanf("%d %d",&x,&n); if(n<=0 || x<=0) { printf("\n Value is not valid"); } else { printf("\n Value is valid\n"); s_sum=1; for(i=1;i<=n;i++) { s_sum=s_sum+pow(x,i); } printf("\n Sum of series=%d\n",s_sum); } getch( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 37

Program No: 24

Aim: To perform the addition and multiplication of two complex numbers using structures. Source Code: #include<stdio.h> #include<math.h> void arithmetic(int opern); struct comp { double realpart; double imgpart; }; void main( ) { int opern; clrscr(); printf("\n\n \t\t\t***** MAIN MENU *****"); printf("\n\n Select your option: \n 1:ADD\n 2:MULTIPLY\n 0:EXIT \n\n\t\t Enter your Option [ ]\b\b"); scanf("%d",&opern); switch(opern) { case 0: exit(0); case 1: case 2: arithmetic(opern); default: main( ); } }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 38

void arithmetic(int opern) { struct comp w1, w2, w; printf("\n Enter two Complex Numbers (x+iy):\n Real Part of First Number:"); scanf("%lf",&w1.realpart); printf("\n Imaginary Part of First Number:"); scanf("%lf",&w1.imgpart); printf("\n Real Part of Second Number:"); scanf("%lf",&w2.realpart); printf("\n Imaginary Part of Second Number:"); scanf("%lf",&w2.imgpart); switch(opern) { /*addition of complex number*/ case 1: w.realpart = w1.realpart+w2.realpart; w.imgpart = w1.imgpart+w2.imgpart; break; /*multiplication of complex number*/ case 2: w.realpart=(w1.realpart*w2.realpart)-(w1.imgpart*w2.imgpart); w.imgpart=(w1.realpart*w2.imgpart)+(w1.imgpart*w2.realpart); break; } if (w.imgpart>0) printf("\n Answer = %lf+%lfi",w.realpart,w.imgpart); else printf("\n Answer = %lf%lfi",w.realpart,w.imgpart); getch( ); main( ); }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 39

Program No: 25

Aim: To copy the contents of one file to another file. Source Code: #include<stdio.h> int main(int argc,char *argv[ ]) { FILE *fp,*ft; char ch; if(argc!=3) { printf("Error, You should give the destination file name"); return 0; } fp=fopen(argv[1],"r"); ft=fopen(argv[2],"w"); while(!feof(fp)) { ch=fgetc(fp); fputc(ch,ft); } printf("\n File has been copied"); fclose(fp); fclose(ft); return 0; }

www.jntuworld.com

www.jntuworld.com I.B.TECH - CSE C Programming Lab P a g e | 40

Program No: 26

Aim: To reverse the first n characters in a file. Source Code: #include <stdio.h> #include <conio.h> #include <string.h> #include <process.h> void main(int argc, char *argv[ ]) { char a[15]; char s[20]; char n; int i,k,len,j=0; FILE *fp; if(argc!=3) { puts("\n Improper number of arguments"); exit(0); } fp = fopen(argv[1],"r"); if(fp == NULL) { puts("\n File cannot be opened"); exit(0); } k=*argv[2]-48; n = fread(a,1,k,fp); a[n]='\0'; len=strlen(a); for(i=len-1;i>=0;i--) { s[j]=a[i]; printf("%c",s[j]); j=j+1; } s[j+1]='\0'; getch( ); }

www.jntuworld.com

You might also like