This Post Contains A Mini Project :~ C Program To Perform Various Operations On Strings. [Such As : Find Length, Copy, Reverse, Palindrome, Concatenation, Sub-string] With Correct Source Code, Algorithm & Output. This Program Is Written, Compiled & Executed At Turbo C/C++3.0 Compiler & Will Help You To Understand The Concept Of 'String Operations', 'Character Arrays', 'Functions', 'Menu Driven Concept' From C++ Language. It Is A Well-Structured Program With Proper Comments Which Provides Step-By-Step Description Of Various Features Of The Language In A Simple & Easy-To-Understand Way.
Mini Project :~ C Program To Perform Various Operations On Strings. [Such As : Find Length, Copy, Reverse, Palindrome, Concatenation, Sub-string]
/* Declaration Of Header Files */ #include <stdio.h> #include <conio.h> #include <stdlib.h> /* Function Declarations */ void Scan1(char *); void Scan2(char * , char *); void Leng (char *); void Copy (char * , char *); void Reve (char * , char *); void Palindrome(char * , char *); void Concat (char * , char *); void Subs (char Str1[] , char Str2[]); /* Start Of Main Program */ void main() { /* Declaration Of Local Variables Of 'main()' Function */ int Num = 0; char Str1[50] , Str2[50]; clrscr(); /* Printing 'Menu' On Screen/Console */ printf(" \n :: Welcome To 'String Operation' Program :: \n "); do { printf(" \n Please Select One Of The Options From Following Menu : "); printf(" \n 1. Length Of Given String. \n 2. Copy Of Given String."); printf(" \n 3. Reverse The String. \n 4. Check For Palindrome."); printf(" \n 5.Concatenate The Strings. \n 6. To Find The Sub-string."); printf(" \n 7. EXIT From PROGRAM."); printf(" \n Please Enter Your Option Here ::\t\a"); scanf("%d" , &Num); switch(Num) { case 1: textcolor(RED); clrscr(); printf(" \n :: Welcome To Length Function :: \n "); Scan1( Str1 ); // Call To Function. Leng ( Str1 ); // Call To Function. break; case 2: textcolor(GREEN); clrscr(); printf(" \n :: Welcome To Copy Function :: \n "); Scan1( Str1 ); Copy ( Str1 , Str2 ); // Call To Function. break; case 3: textcolor(YELLOW); clrscr(); printf(" \n :: Welcome To Reverse Function :: \n "); Scan1( Str1 ); Reve ( Str1 , Str2 ); // Call To Function. break; case 4: textcolor(10); clrscr(); printf(" \n :: Welcome To Palindrome Function :: \n "); Scan1( Str1 ); Palindrome( Str1 , Str2 ); // Call To Function. break; case 5: textcolor(12); clrscr(); printf(" \n :: Welcome To Concatenation Function :: \n "); Scan2( Str1 , Str2 ); Concat(Str1 , Str2); // Call To Function. break; case 6: textcolor(5); clrscr(); printf(" \n :: Welcome To Substring Function :: \n "); Scan2( Str1 , Str2 ); Subs ( Str1 , Str2 ); // Call To Function. break; case 7: exit (0); // Exit From Program. break; default: printf(" \n Sorry!!!. Please Enter A Valid Choice. "); } }while( Num <= 7 ); /* End Of 'Menu' */ getch(); } /* End Of Main Program */ void Scan1(char *Str1) // Function Definition. { printf(" \n Please Enter The String ::\t "); fflush( stdin ); gets ( Str1 ); } void Scan2(char *Str1 , char *Str2) // Function Definition. { printf(" \n Please Enter String 1 ::\t "); fflush( stdin ); gets ( Str1 ); printf(" \n Please Enter String 2 ::\t "); fflush( stdin ); gets ( Str2 ); } void Leng( char *Str1 ) // Function Definition. { int i = 0; while( Str1[i] != '\0' ) { i++; } printf(" \n The Length Of String Is ::\t%d ", i); getch(); } void Copy( char *Str1 , char *Str2 ) // Function Definition. { int i = 0 , j = 0; while( Str1[i] != '\0' ) { Str2[j] = Str1[i]; j++; i++; } Str2[j] = '\0'; printf("The Entered String Is ::\t"); puts(Str1); printf("Copy Of Given String Is ::\t"); puts(Str2); getch(); } void Reve( char *Str1 , char *Str2 ) // Function Definition. { int i = 0 , j = 0; while( Str1[i] != '\0' ) { i++; } for(i--; i>=0; i--) { Str2[j] = Str1[i]; j++; } Str2[j] = '\0'; printf("The Entered String Is ::\t"); puts(Str1); printf("Reversed Of Given String Is ::\t"); puts(Str2); getch(); } void Palindrome( char *Str1 , char *Str2 ) // Function Definition. { int i = 0, j = 0, flag = 0; while( Str1[i] != '\0' ) { i++; } for(i--; i>=0; i--) { Str2[j] = Str1[i]; j++; } Str2[j] = '\0'; i=0; j--; while( Str1[i] == Str1[j] ) { flag = 1; i++; j--; } if( flag == 1 ) { printf("\nThe Given String Is A Palindrome"); } else { printf("\nThe Given String Is Not A Palindrome"); } getch(); } void Concat( char *Str1 , char *Str2 ) // Function Definition. { int i = 0 , j = 0; while( Str1[i] != '\0' ) { i++; } while( Str2[j] != '\0' ) { Str1[i] = Str2[j]; i++; j++; } Str1[i] = '\0'; printf("\n The Concatenated String Is :"); puts( Str1 ); getch(); } void Subs( char Str1[] , char Str2[] ) // Function Definition. { int i , j , flag = 0; for(j=0; Str2[j] != '\0'; j++) { for(i=0; Str1[i] != '\0'; i++) { if( Str1[i] == Str2[j] ) { flag = 1; break; } } } if( flag == 1 ) { printf("\nThe Given String 2 Is A Substring Of String 1"); } else { printf("\nThe Given String 2 Is Not A Substring Of String 1"); } getch(); }
No comments:
Post a Comment