【发布时间】:2014-05-10 18:07:25
【问题描述】:
我正在尝试编写一个 c++ 代码来反转用户的字符串。 例如:
用户输入"apple and orange"。
输出是"orange and apple"。
#include <stdio.h>
#include <string.h>
int main(void) {
char str[100];
char delims[] = " ";
char *token;
printf("enter your word seperated by space ");
gets(str);
token = strtok( str, delims );
while ( token != NULL ) {
printf( " %s\n", token);
token = strtok( NULL, delims );
}
system("pause");
return 0;
}
问:如何交换第一个词和最后一个词? 谢谢。
【问题讨论】:
-
这是一篇内容丰富的帖子,但毫无疑问。
-
你的问题是?
-
如何使用循环来反转字符串??
-
@user3435095 提示:您不需要反转字符串,而是反转单词的顺序! (并且不要使用
strtok()BTW,它弊大于利) -
您想只交换第一个词和最后一个词,还是全部颠倒?我会使用 std::string 而不是 c 字符串,因为它有一些有用的功能,例如 find、find_last_of、substr 等,在这里可以提供帮助