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

Stack push pop, 2 flowcharts, pseudocode for each (at least 4 algorithms), ...

2 flowcharts, pseudocode for each (at least 4 algorithms), and code for either a stack or a queuestion..

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

C program to demonstrate pointer to array, C program to demonstrate Pointer...

C program to demonstrate Pointer to array: void p2a(int *); void main() {                 int x=10, *a,**b;                 int arr[5];                 a=&x;//po

Write a program to calculate the total resistance, Write a program to calcu...

Write a program to calculate the total resistance of a series or parallel circuit. The maximum number of resistors is two.   We need to decide whether the user wants the to

Develop a motion sensor in altera control, Develop a Motion sensor in Alter...

Develop a Motion sensor in Altera control Project Description: I want a project written in c using Altera eclipse development tool, that controls a motion sensor ( SRF05 ) fr

Program to display appropriate message-clients accounts, Question A ban...

Question A bank normally updates it's clients accounts at the end of each month.Of the two types of bank accounts:savings and checking, a client must maintain a minimum balance

Implement the c++ code in assembly language, Selecting Array Elements Imple...

Selecting Array Elements Implement the following C++ code in assembly language, using the block-structured .IF and .WHILE directives. Assume that all variables are 32-bit signed in

Write a program to design a leet speak translator, The program will consist...

The program will consist of two text fields, two buttons, and a counter label.  One text field will be input, where the user types the plain text.  The second text field will be ou

Differences between a pointer and a reference, Differences between a pointe...

Differences between a pointer and a reference 1.  A reference must always point to some object where as this restriction is not imposed on a pointer. e.g. int *pi = 0;

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