用C++写一个函数,他接受2个字符串S1和S2,确定串S1是否是通过变动串S1中的字符顺序得到的串
用C++写一个函数,他接受2个字符串S1和S2,确定串S1是否是通过变动串S1中的字符顺序得到的串,即一个串是否为另一个串中字符的一种排列...
用C++写一个函数,他接受2个字符串S1和S2,确定串S1是否是通过变动串S1中的字符顺序得到的串,即一个串是否为另一个串中字符的一种排列
展开
2个回答
展开全部
#include<iostream>
#include<string>
using namespace std;
void sort(char * s)//对字符串排序
{
char temp;
for(int i=0;i<strlen(s);i++)
for(int j=i+1;j<strlen(s);j++)
if(*(s+i)>*(s+j))
{
temp=*(s+j);
*(s+j)=*(s+i);
*(s+i)=temp;
}
}
void main()
{
char str1[100],str2[100];
cout<<"please input str1:";
cin>>str1;
cout<<"please input str2:";
cin>>str2;
if(strlen(str1)!=strlen(str2))//长度不同直接返回
{
cout<<"str1 is not modified from str2\n";
return;
}
sort(str1);
sort(str2);
if(0==strcmp(str1,str2))
{
cout<<"str1 is modified from str2\n";
}
else
{
cout<<"str1 is not modified from str2\n";
}
return;
}
#include<string>
using namespace std;
void sort(char * s)//对字符串排序
{
char temp;
for(int i=0;i<strlen(s);i++)
for(int j=i+1;j<strlen(s);j++)
if(*(s+i)>*(s+j))
{
temp=*(s+j);
*(s+j)=*(s+i);
*(s+i)=temp;
}
}
void main()
{
char str1[100],str2[100];
cout<<"please input str1:";
cin>>str1;
cout<<"please input str2:";
cin>>str2;
if(strlen(str1)!=strlen(str2))//长度不同直接返回
{
cout<<"str1 is not modified from str2\n";
return;
}
sort(str1);
sort(str2);
if(0==strcmp(str1,str2))
{
cout<<"str1 is modified from str2\n";
}
else
{
cout<<"str1 is not modified from str2\n";
}
return;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你把题目都写错了啊。这种简单的题目你都想偷懒,能学好么?还是认真做作业吧
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询