Question & Answer: C PROGRAM Write a function called concat which takes two strings as input, s1 and s2 and returns a new string, s3, in w…..

C PROGRAM Write a function called concat which takes two strings as input, s1 and s2 and returns a new string, s3, in which the second string is concatenated (added to) on to the end of the first string. In other words the new string consists of all the characters of s1 up to but not including the null character followed by all the characters in s2 including the final null character. For example, if s1 is ”agree” and s2 is ”able”, the new string would contain ”agreeable”. Your function should also return the length of the new string. Write a main program which tests your function. The program output should look like: The concatenation of the string: “agree” and the string: “able” is the string: “agreeable” which is 9 characters in length.

Expert Answer

 

#include <stdio.h>

//concat function prototype

int concat (char *, char *, char *);

int main()

{

char s1[50], s2[50], s3[100];//modify the string size based on your requirement.

int length;//length of the concatenated string

printf(“Enter a stringn”);

gets(s1);//s1 string

printf(“Enter other string to concatenaten”);

gets(s2);//s2 string

//concat function call

length = concat (s1, s2, s3);

printf(“The concatenation of the string: “%s” and the string: “%s” is the string: “%s” which is %d characters in length.n”, s1, s2, s3, length);

return 0;

}

int concat(char *sInput1, char *sInput2, char *sOutput)

{

int stotal_length=0, s2_length=0;

while (sInput1[stotal_length] != ‘’) //Iterate through each character of s1 string untill Null character.

{

sOutput[stotal_length] = sInput1[stotal_length];//copying all the characters of s1 into s3 except NULL

stotal_length++;

}

while (sInput2[s2_length] != ‘’) //Iterate through each character of s2 string untill Null character.

{

sOutput[stotal_length] = sInput2[s2_length];//Appending the s2 string to s3 string

s2_length++;

stotal_length++;//Total length of the string s3

}

sOutput[stotal_length] = ‘’;//Adding NULL character at the end

return stotal_length;

}

Still stressed from student homework?
Get quality assistance from academic writers!