//你只需要把下面的第二个字符的位置变成最后一个就行了。
//输入一个字符串,将其中最大的和第一个字符交换,最小字符与第2个字符交换。
#include<iostream>
using namespace std;
void max(char[]);
void min(char[]);
void exchange(char[]);
int b,s;
int main()
{
char str[100]=" ";
cout<<"please input a string:";
cin>>str;
if(strlen(str)<2)
{
cout<<"input error!"<<endl;;
return 0;
}
cout<<str<<endl;
exchange(str);
cout<<str<<endl;
}
void max(char a[])
{
char max=a[0];
int n=0;
while(a[n]!='\0')
{
if(a[n]>max)
{
max=a[n];
b=n;
}
n++;
}
}
void min(char a[])
{
char min=a[0];
int n=0;
while(a[n]!='\0')
{
if(a[n]<min)
{
min=a[n];
s=n;
}
n++;
}
}
void exchange(char a[])
{ max(a);
char temp;
temp=a[b];
a[b]=a[0];
a[0]=temp;
min(a);
a[0]=temp;
temp=a[s];
a[s]=a[1];
a[1]=temp;
}
追问可输入 asdzxc 结果是为 zadsxc
追答welcome