如何用最后一个数字翻转字符串中的第一个数字,然后是倒数第二个和倒数第二个,依此类推?
Posted
技术标签:
【中文标题】如何用最后一个数字翻转字符串中的第一个数字,然后是倒数第二个和倒数第二个,依此类推?【英文标题】:How do I flip the first number in the string with the last number and then second and second last and so on? 【发布时间】:2021-01-21 13:36:26 【问题描述】:这是我尝试过的,但不合逻辑。 First_num++ 只是复制 2 个数字而不是第二个数字,last_num++ 也是如此 我如何继续这样复制并找出它们 我知道我可以反向计算,因为输出是相同的。我可以通过反转计数来做到这一点,但问题要我一个一个地交换字符。请帮忙,谢谢。
#include <iostream>
#include <cctype>
using namespace std;
void reverse_word(char character[]);
int main()
char characters[50];
reverse_word(characters);
return 0;
void reverse_word(char character[])
char temp1[2] = "\0";
char temp2[2] = "\0";
char first_num = 1;
char last_num = 1;
cout << "Enter a word to reverse first word last word second first second last and so on: ";
cin >> character;
for (int i=0;i<strlen(character)/2;i++)
strncpy(temp1, character, first_num);
first_num++;
strcpy(temp2 , &character[strlen(character)-last_num]);
last_num++;
for (int i = 0; i < strlen(character) / 2; i++)
cout << temp2;
cout << temp1;
【问题讨论】:
这一定是来自一些在线编码/黑客/竞赛网站的无数无意义的谜题之一。不幸的是,那些无用的网站只不过是一堆谜题,并没有任何材料可以教授有效实现这些基本算法所需的各种 C++ 技术和算法。这只能在一本好的 C++ 教科书中找到。显示的代码比它需要的要长和复杂得多。这里没有快速修复。整个方法是错误的,必须使用适当的算法和 C++ 库函数从头开始重新实现。 我的讲师说 std 很好,但是对于没有很多 c 预处理器指令的程序或者为了我们现在方便的东西,它不需要它。对于古代c库我真的不知道我的大学在全国排名第二 @RyanTan -- 说 std 很好,但是对于没有很多 c 预处理器指令的程序来说不需要它 -- 如果真的这么说,你的讲师是C
程序员,伪装成 C++ 老师,IMO。此外,您对您想要做什么的描述令人困惑。您要回答的实际问题是什么?
我可以向您保证,您不是第一个在 *** 上发布证据证明 C++ 讲师不称职的人。不幸的是,这里没有好的解决方案,除了尝试自己学习 C++,使用经过编辑的高质量教科书。
@RyanTan 另外,如果是reverse_word2
的问题,你为什么要发布不相关的功能,例如reverse_word
和其他功能?理想的程序应该是一个简单的main()
程序,它调用reverse_word2
并带有演示问题的示例数据。
【参考方案1】:
你可以使用c++的内置函数reverse(begin, end)
,其中begin
和end
迭代器的参数如下:
#include <algorithm>
#include <iostream>
#include <string>
using namespace std;
int main()
string str = "String example";
reverse(str.begin(), str.end()); // outputs --> elpmaxe gnirtS
cout<<"\n"<<str;
return 0;
这是一个简短而快速的解决方案,但如果您想获得更深入的视图,您可以应用一些不错的算法。
【讨论】:
【参考方案2】:您应该在同一个 for 循环中计算临时变量,而不是在不同的循环中。
【讨论】:
以上是关于如何用最后一个数字翻转字符串中的第一个数字,然后是倒数第二个和倒数第二个,依此类推?的主要内容,如果未能解决你的问题,请参考以下文章