Question

C++ program, please follow the instruction and do not add any new comment or remove any....

C++ program, please follow the instruction and do not add any new comment or remove any.

/**
CIS 22B: Homework 4A
Using c-string manipulation functions: strcpy, strcat, strrchr, etc.

Write a function that given a c-string of words removes the last word and inserts
it in the beginning of the string. All words are separated by spaces.
You may assume that there is only one space between two words.
Strings that are either empty or consists of only one word will not be changed.
// HINT: Use a temp string

Example:        "Two Three Four Five One"
After processing: "One Two Three Four Five"

Save the output as a comment at the end of the program.

NAME:
============================================================================================= */
#include <iostream>
#include <cstring>
using namespace std;


bool moveFront( char s[] );

int main( void )
{
char sList[5][100] = {"One Two Three Four Five Zero", "", "Three Two One Four", "Second First", "Done!"};
bool change;
  
// test the function with 5 strings
for (int i = 0; i < 5; i++)
{
cout << "Before: [" << sList[i] << "]\n";
change = moveFront(sList[i]);
cout << " After: [" << sList[i] << "]\n";
if (!change)
cout << "\t\t The string is either empty or it has only one word!";
}
return 0;
}

/* ============================================= */
bool moveFront( char s[] )
{
bool success = false;
char temp[100];
  

return success;
}
/***************************************************************
Save the OUTPUT below


*/

0 0
Add a comment Improve this question Transcribed image text
Answer #1

If you have any doubts, please give me comment..

#include <iostream>

#include <cstring>

using namespace std;

bool moveFront(char s[]);

int main(void) {

char sList[5][100] = {"One Two Three Four Five Zero", "", "Three Two One Four", "Second First", "Done!"};

bool change;

// test the function with 5 strings

for (int i = 0; i < 5; i++) {

cout << "Before: [" << sList[i] << "]\n";

change = moveFront(sList[i]);

cout << " After: [" << sList[i] << "]\n";

if (!change)

cout << "\t\t The string is either empty or it has only one word!"<<endl;

}

return 0;

}

/* ============================================= */

bool moveFront(char s[]) {

bool success = false;

char temp[100]="", prev[100]="";

char *token = strtok(s, " ");

while(token!=NULL){

success = true;

strcpy(prev, token);

token = strtok(NULL, " ");

if(token!=NULL){

strcat(temp, " ");

strcat(temp, prev);

}

}

strcat(prev, temp);

strcpy(s, prev);

return success;

}

/***************************************************************

Save the OUTPUT below

Before: [One Two Three Four Five Zero]

After: [Zero One Two Three Four Five]

Before: []

After: []

The string is either empty or it has only one word!

Before: [Three Two One Four]

After: [Four Three Two One]

Before: [Second First]

After: [First Second]

Before: [Done!]

After: [Done!]

*/

C/C++ is a compiler dependent... based on operating system, it will change...

If you get any error, please give me comment with error

Add a comment
Know the answer?
Add Answer to:
C++ program, please follow the instruction and do not add any new comment or remove any....
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
  • C++ program, please follow the instruction and do not add or remove and comments. Please highlight...

    C++ program, please follow the instruction and do not add or remove and comments. Please highlight any change made to the original code. /** CIS 22B: Homework 4A Using c-string manipulation functions: strcpy, strcat, strrchr, etc. Write a function that given a c-string of words removes the last word and inserts it in the beginning of the string. All words are separated by spaces. You may assume that there is only one space between two words. Strings that are either...

  • This program uses C++. This program reads in a line from the user and prints it...

    This program uses C++. This program reads in a line from the user and prints it out in a certain format. An example would be Input: 1 2 3 4 5 would result Output: [{1}, {2}, {3}, {4}, {5}]. When quotations marks are added into the input the format becomes different. For instance, Input 1 2 "3 4 5" would result in [{1}, {2}, {3 4 5}]. When I ad multiple quotation marks into the input, it will only use...

  • /// c ++ question plz help me fix this not a new code and explain to...

    /// c ++ question plz help me fix this not a new code and explain to me plz /// Write a function to verify the format of an email address: bool VeryifyEmail(char email[ ]); Do NOT parse the email array once character at a time. Use cstring functions to do most of the work. Take a look at the available cstring and string class functions on cplusplus website. Use a two dimensional array to store the acceptable top domain names:...

  • Please add a detailed comment for this program. #include<iostream> #include<string> #include<fstream> #include<sstream> #include<cctype> using namespace std;...

    Please add a detailed comment for this program. #include<iostream> #include<string> #include<fstream> #include<sstream> #include<cctype> using namespace std; int is_palindrome(string word){ int len = word.size(); for(int i=0; i<len/2; i++){ if(toupper(word[i])!=toupper(word[len-i-1])) return 0; } return 1; } int have_vowels3(string word){ int cnt = 0; for(int i=0; i<word.size(); i++){ if(tolower(word[i])=='a' || tolower(word[i])=='e' || tolower(word[i])=='i' || tolower(word[i]) =='o' || tolower(word[i]) == 'u') cnt++; } if(cnt>=3) return 1; else return 0; } int have_consecutives(string word){ for(int i=0; i<word.size()-1; i++){ if(tolower(word[i])=='o' && tolower(word[i+1]=='o')) return 1; } return...

  • I need to add something to this C++ program.Additionally I want it to remove 10 words...

    I need to add something to this C++ program.Additionally I want it to remove 10 words from the printing list (Ancient,Europe,Asia,America,North,South,West ,East,Arctica,Greenland) #include <iostream> #include <map> #include <string> #include <cctype> #include <fstream> #include <iomanip> using namespace std; void addWord(map<std::string,int> &words,string s); void readFile(string infile,map<std::string,int> &words); void display(map<std::string,int> words);    int main() { // Declaring variables std::map<std::string,int> words;       //defines an input stream for the data file ifstream dataIn;    string infile; cout<<"Please enter a File Name :"; cin>>infile; readFile(infile,words);...

  • Need help in c++ programming to output the lines in my code: if word if found:...

    Need help in c++ programming to output the lines in my code: if word if found:            cout << "'" << word << "' was found in the grid" << endl;            cout << "'" << word << "' was not found in the grid" << endl; The words can be touching if they are horizontally, vertically, or diagonally adjacent. For example, the board: Q W E R T A S D F G Z X C V B Y U A...

  • Hello I need a small fix in my program. I need to display the youngest student...

    Hello I need a small fix in my program. I need to display the youngest student and the average age of all of the students. It is not working Thanks. #include <iostream> #include <iomanip> #include <fstream> #include <vector> #include <algorithm> using namespace std; struct Student { string firstName; char middleName; string lastName; char collegeCode; int locCode; int seqCode; int age; }; struct sort_by_age { inline bool operator() (const Student& s1, const Student& s2) { return (s1.age < s2.age); // sort...

  • C++ problem where should I do overflow part? in this code do not write a new...

    C++ problem where should I do overflow part? in this code do not write a new code for me please /////////////////// // this program read two number from the user // and display the sum of the number #include <iostream> #include <string> using namespace std; const int MAX_DIGITS = 10; //10 digits void input_number(char num[MAX_DIGITS]); void output_number(char num[MAX_DIGITS]); void add(char num1[MAX_DIGITS], char num2[MAX_DIGITS], char result[MAX_DIGITS], int &base); int main() { // declare the array = {'0'} char num1[MAX_DIGITS] ={'0'}; char...

ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT