通过键盘输入任意一个字符串序列,除空格、制表符和换行符外,可能包含其他任意字符。请编写一个程序,自动实现倒置字符串中的各个字符的位置。如果输入“abc”,结果将是“cba”
//解法一:STL解法
#include <iostream>
#include <string>
#include <iterator>
using namespace std;
int main()
{
string str;
cin >> str;
for (string::reverse_iterator it=str.rbegin(); it!=str.rend(); it++)
{
cout << *it;
}
cout << endl;
return 0;
}
//解法二
#include <iostream>
using namespace std;
int main()
{
char ch[100],c;
char temp;
int i=0,size;
cout << "input string (enter to end):" <<endl;
while (1)
{
scanf("%c",&c);
if (c=='\n')
{
break;
}
ch[i]=c;
i++;
}
ch[i]='\0'; //字符数组中最后一位位'\0'
size = strlen(ch)-1;
i=0;
while (i<=size)
{
temp=ch[i];
ch[i]=ch[size];
ch[size]=temp;
i++;
size--;
}
cout << ch << endl;
return 0;
}