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

Program decision making instructions, Within programs we very often want to...

Within programs we very often want to execute a different section of code, depending upon various conditions within C the If statement is used to achieve this. The If statement con

#title.Thick line, #questio c++ program for drawing thick line

#questio c++ program for drawing thick line

What do you signify by stack unwinding?, A: this is a procedure during exce...

A: this is a procedure during exception handling while the destructor is called for all local objects in the stack among the place where the exception was thrown & where this is ca

Expected output of the program - c program, Expected output of the program:...

Expected output of the program: 1. Consider the following programs. For each, indicate whether the program is correct. If yes, what is the expected output? If not, what is the

User-defined data type, Explain  U s e r - D e f i n e d D a t a...

Explain  U s e r - D e f i n e d D a t a T y p es? C has Union and Structure as user-defined data types.  C++ has class which looks like structure with a

Do friends break encapsulation?, A: No. If they're utilized properly, they ...

A: No. If they're utilized properly, they increase encapsulation. You frequently require splitting a class in half while the two halves will have distinct numbers of instances o

What is object variable, The definition of an object(variable ): We can...

The definition of an object(variable ): We can explain a variable(set memory to the variable) in the following ways. e.g. double salary; int month; When more than o

Program that will recursively prompt for input from the user, BACKGROUND: F...

BACKGROUND: FILE SYSTEMS  In a computer, a file system (sometimes written filesystem) is the way in which files are named and where they are placed logically for storage and ret

Explain some string oriented library functions, Explain some String Oriente...

Explain some String Oriented Library Functions? To make simpler string processing we can use special string oriented library functions. Mainly the C compilers include library f

Luminous Jewels - Polishing Necklace, Byteland county is very famous for lu...

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 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