EBK DATA STRUCTURES AND ALGORITHMS IN C
EBK DATA STRUCTURES AND ALGORITHMS IN C
4th Edition
ISBN: 9781285415017
Author: DROZDEK
Publisher: YUZU
bartleby

Concept explainers

Question
Book Icon
Chapter 1, Problem 5E
Program Plan Intro

String functions:

The string functions and their purpose is shown below:

  • The function “strcpy(s1,s2)” copies string “s2” into “s1”.
  • The function “strcat(s1,s2)” concatenates string “s2” on end of “s1”.
  • The function “strlen(s1)” returns length of “s1”.
  • The function “strchr(s1,ch)” would return a pointer to first presence of character “ch” in string “s1” .

Explanation of Solution

//(b)strcmp function

The function “strcmp()” compares two strings. It takes header pointer of two strings as function arguments, it checks until the string reaches null and compares both strings by comparing each character at corresonding position ...

Explanation of Solution

//(c) Strcat function

The function “Strcat()” copies data of “s2” to “s1”. To do so, it first reaches end of the string “s1” using recursive calls “Strcat(++s1, s2)”...

Explanation of Solution

//(d) Strchr function

The function “Strchr()” searches for a particular character in string. It iterates through character array and compares each character with search character, if it matches then the index of match is returned.

char* Strchr(char *s, char ch)

{

/*It checks for each character in string and compares it with that of the search string until the     character array reaches null or it becomes empty. If a match is obtained, then store index of match*/

for ( ; *s != ch && *s != '\0'; s++);

  //Return index of matched character

  return *s == ch ? s : 0;

}

The main function defines two character array and tests the functions “Strlen()”, “Strcmp()”, “Strchr()”, “Strcat()” and displays the final result based on the return values of each functions

int main()

{

//Declare the variable

int ret;

//Declare character arrays

char str1[100] = "Drowning";

char *str2 = "Boat";

//Declare pointer of string

char *pch;

//Declare variables

int length ;

//Call the function "strlen()" and store the return value

length = Strlen(str1);

//Display first string

cout<<"String1: ";

puts(str1);

//Display second string

cout<<"String2: ";

puts(str2);

//Display the length of first string

cout<<"\nLength of String1 :"<< length;

//Call the function "Strcmp()" and store the return value of function

ret = Strcmp(str1,str2);

If return value is less than 0, then “String1” is less than “String2”. If return value is greater than 0, then “String2” is less than “String1”, else “String1” equals “String2”.

if(ret < 0)

{

  //Display the result

  cout<<"\nString1 is less than String2";

}

If return value is greater than 0, then “String2” is less than “String1”

else if(ret > 0)

{

  //Display the result

  cout<<"\nString2 is less than String1";

}

If “String1” equals “String2”, display the equal message

//"String1" equals "String2"

else

{

  //Display the result

  cout<<"\n String1 equals String2";

}

The function “Strchr()” is called with “str1” and search character “r” as argument, function’ sreturn value is stored, that is , the value of matched index...

Blurred answer
Students have asked these similar questions
A pointer int *p is declared, it is able to hold addresses of double type values as well.. Single choice.     True False
Declare an array of pointers named sports to store the following strings char * sports = { “football”, “basketball”, “golf”, “cricket”, “chess”, “badminton”};   Iterate over each string character by character and count the number of vowels in each string. Print the output to the console in the following form: String ’football’ contains ‘2’ vowels. They are ‘o’, ‘a’. String ’basketball’ contains ‘2’ vowels. They are ‘a’, ‘e. String ’golf’ contains ‘1’ vowel. They are ‘o’. String ’cricket’ contains ‘2’ vowels. They are ‘i’, ‘e’. String ’chess’ contains 1 vowel.  It is  ‘e’. String ’badminton’ contains three vowels. They are ‘a’, ‘i’, ‘o’   If a specific vocal occurs more than once in the string count it as one instance. Refer example above where football contains 2 ‘o’ vowels but it is counted as one for vowel ‘o’ Remember vowels are’: a’, ‘e’, ‘i’, ‘o’, ‘u’   To iterate over strings, you should count the number of strings as 6 by getting the size of the array of pointers Write a…
Pointers can be compared using the == operator. A) True B) False
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Systems Architecture
Computer Science
ISBN:9781305080195
Author:Stephen D. Burd
Publisher:Cengage Learning