C program for string operations, C/C++ Programming

Assignment Help:

Aim: To implement a program for following string operations:

  • Length of String.
  • String Concatenation.
  • Substring (provide start index and length)
  • Find character at given index.
  • Find index of first occurrence of a given character.
  • Reverse string.

 

Code:                      

class String

{

            char str[50];

            public:

            String();

            void getdata();

            int length1();

            void concat(String s);

            String substring(int ind, int len);

            char charAt(int ind);

            int indexOf(char ch);

            String reverse();

            void display();

};

 

void String::display()

{

            cout<

}

 

void String::getdata()

{

            gets(str);

}

 

String::String()

{

            strcpy(str,"");

}

 

int String::length1()

{

            int l;

            l=strlen(str);

            return (l);

}

 

void String::concat(String s)

{

            strcat(str,s.str);

}

 

String String::substring(int ind, int len)

{

            int l,x,m;

            char su[50];

            String sub;

            strcpy(sub.str,"");

            for(x=ind,m=0;x<=len+1;x++,m++)

            {

                        su[m]=str[x];

            }

            su[m]='\0';

            strcpy(sub.str,su);

            return (sub);

 

}

 

char String::charAt(int ind)

{

            char c=' ';

            int l=strlen(str);

            if(ind>l)

                        cout<<"Position out of Bounds";

            else

                        c=str[ind];

            return (c);

}

 

int String::indexOf(char ch)

{

            int x=1;

            while(str[x]!=ch && str[x]!='\0')

                        x++;

            if(str[x]!=ch)

                        return (-1);

            else

                        return (x);

}

 

String String::reverse()

{

            String s;

            strcpy(s.str,str);

            strrev(s.str);

            return (s);

}

 

void main()

{

            clrscr();

            String s1,s2,s3,s4;

            cout<<"Enter string 1:";

            s1.getdata();

            cout<<"\n\nEnter string 2:";

            s2.getdata();

            char ch='o';

            int l=s1.length1();

            cout<<"\n\nLength of string: '";

            s1.display();

            cout<<" 'is "<

            s1.concat(s2);

            cout<<"\n\nAfter concatenation:";

            s1.display();

            int ind=2, len=4;

            cout<<"\n\nStart Index="<

            s3.display();

            char c=s1.charAt(ind+4);

            cout<<"\n\nCharacter at Index: "<

            int i=s1.indexOf(ch);

            cout<<"\n\nIndex of '"<

            s4=s1.reverse();

            cout<<"\n\nReverse of \n\t'";

            s1.display();

            cout<<"'\n\t\tis \n\t";

            s4.display();

            getch();

 

}

Output:

Enter string 1: Ankit Goyal is

 

Enter string 2: a student of VESIT.

 

Length of string: 'Ankit Goyal is ' is 14

 

After concatenation: Ankit Goyal is a student of VESIT.

 

Start Index=2

Length of Substring=4

Substring: kit

 

Character at Index: 6 is 'G'

 

Index of 'o' is: 7

 

Reverse of

        'Ankit Goyal is a student of VESIT.'

                is

        .TISEV fo tneduts a si layoG tiknA


Related Discussions:- C program for string operations

Luminous jewel - a polishing game, Byteland county is very famous for lumin...

Byteland county is very famous for luminous jewels. Luminous jewels are used in making beautiful necklaces. A necklace consists of various luminous jewels of particular colour. Nec

Write a program of inline function, Here is a program that uses an inline f...

Here is a program that uses an inline function to compute and return the absolute value of its input argument. # include inline int abs(int x) {                  ret

Wap to print numbers from 1-50 which are divided by 7, WAP TO PRINT NUMBERS...

WAP TO PRINT NUMBERS FROM 1-50 WHICH ARE DIVIDED BY 7 void main () { int a; clrscr (); a=1; while (a { if (a%7==0) printf ("%d\n",a); a++; } ge

Write a program that takes the image, Write a program that takes the image ...

Write a program that takes the image tracks.jpg and finds Canny edges, and then finds lines in these edges using the Hough transform. The easiest way to do this is to take the prog

Application for build a toy program, With this assignment you will build a ...

With this assignment you will build a toy program that manipulates pointers to integers. You will develop the same main program fragment in both C and Assembler. Thus, you'll get t

How can i present printing for my class fred?, A: Use operator overloading ...

A: Use operator overloading to present a friend left-shift operator, operator #include class Fred { public: friend std::ostream& operator ... private: int i_; // onl

Algorithm, Sine function computation

Sine function computation

Example for external storage class - computer programming, Example for exte...

Example for external storage class - computer programming? extern double sin (double); In a function prototype, for the sin() function its function definition ~ we can write

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd