C++编程 编写字符串反转函数mystrrev
编写字符串反转函数mystrrev,该函数的功能为将指定字符串中的字符顺序颠倒排列。然后再编写主函数验证之。函数原型为voidmystrrev(charstring[])...
编写字符串反转函数mystrrev,该函数的功能为将指定字符串中的字符顺序颠倒排列。然后再编写主函数验证之。
函数原型为 void mystrrev(char string[])
输入格式:
一个字符串,不会超过100个字符长,中间可能包含空格
输出格式:
输入字符串的反转 展开
函数原型为 void mystrrev(char string[])
输入格式:
一个字符串,不会超过100个字符长,中间可能包含空格
输出格式:
输入字符串的反转 展开
3个回答
展开全部
应用C++的string类对象实现。为体现一般性,对象中就允许空格出现;自定义逆序函数形参应使用引用类型,以便永久性改变对实参对象的操作。举例代码如下:
//#include "stdafx.h"//If the vc++6.0, with this line.
#include <string>
#include <iostream>
using namespace std;
void mystrrev(string &str){//引用形参,以改变实参
for(int j=str.length()-1,i=0;i<j;i++,j--){
char t=str[i];
str[i]=str[j],str[j]=t;
}
}
int main(int argc,char *argv[]){
string s;
char ch;
cout << "Input a string...\ns=";
while((ch=cin.get())!='\n')//输入可有空格
s+=ch;
cout << "The original string: " << s << endl;//逆序前
mystrrev(s);//调用自定义逆序函数
cout << "After reverse order: " << s << endl;//逆序后
return 0;
}
运行结果举例:
展开全部
/*
Author:QCQ
Date:2015-4-11
e-mail:qinchuanqing918@163.com
*/
#include<iostream>
#include<stdio.h>
#include<cmath>
#include<string.h>
using namespace std;
void mystrrev(char str[]);
int main()
{
char temp[30];
while(gets(temp)){
cout<<temp<<endl;
mystrrev(temp);
cout<<temp<<endl;
}
return 0;
}
void mystrrev(char str[]){
char *pbegin = str;
char *pend = str + strlen(str) - 1;
while(pbegin < pend)
{
char tmp;
tmp=*pbegin;
*pbegin=*pend;
*pend=tmp;
++pbegin;
--pend;
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询