编写C++风格程序,输入一个字符串,将其中的字符按逆序输出。如输入LIGHT,输出THGIL。要求使用string方法

2024-12-01 23:12:01
推荐回答(5个)
回答1:

#include
using namespace std;
int count(string list[])
{
for (int i=0;i<100;i++)
{
if(list[i]='\0')
{
return i;
}
}
}
string changearry(string arry[],int j)
{
string t;
for(int a=0;a {
t=arry[a];
arry[a]=arry[j-a];
arry[j-a]=t;
}
cout<<"倒换后的数组是:"< for(int a=0;a {
cout< }
}
void main()
{
string list[100];
cout<<"请输入一串字符:"< for (int i=0;i<100;i++)
{
cin>>list[i];
}
cout<<"您输入的字符是:"< for (int j=0;i<100;i++)
{
cout< }
int h=count(list[100])
string changearry(list[100],h)
}
应该是这样,我没有C++编译器,所以没有运行过,但我想应该是对的,如果有什么问题楼主再联系我 ,关于四楼评论我代码太长的问题,我想做如下解释,因为楼主要求用C++的风格编写这个代码,但是C++的风格就是三个:封装,继承,多态,这三个牵涉到更不同的写法问题,并且我看此题目也似乎是楼主的作业,算是初期阶段的起航,我想楼主也不一定了解到什么是封装,继承,多态,所以我就自作主张的采用了函数来编写,实质上和四楼是一回事,只不过我用函数把方法隔离开了而已

回答2:

很简单的一个程序,二楼给了那么长,看着费劲。
#include
#include
using namespace std;
int main()
{
int i;
string str;
cout<<"请输入一串字符:"< cin>>str;
cout<<"字符串倒序后为:"< for(i=str.length()-1;i>=0;i--)
cout< cout<
system("pause");
return 0;
}

回答3:

#include
#include

using namespace std;

string reverse(string str)
{
string s;
for(int i= str.size()-1;i>=0;i--)
{
s+=str.at(i);
}
return s;
}
int main()
{
cout << reverse("asdf") << endl;
return 0;
}

回答4:

编程思路是:
把字串每个字符拿出来放在一个数组中
然后使用循环从最后往前读和输出这个数组
任何语言都能做到,自己考虑下

回答5:

也可以这么写,可能比那个答案好理解一些。
#include
#include
using namespace std;
int main()
{ string str;
int i,n;
char temp;
cout<<"please input a string:";
cin>>str;
n=str.size();
for(i=0;i{temp=str[i];str[i]=str[n-i-1];str[n-i-1]=temp;}
cout<return 0;
}