修练者
#include<iostream>
#include<cstdio>
#include<string>
#include<sstream>
using namespace std;
int changdu(char n[])
{
int i=0,sum=0;
for(i=0;n[i]!='\0';i++)
sum++;
return sum;
}
void lianjie(char n[],char a[])
{
int i=0,sum=0,j=0,k;
stringstream l;
l<<n;
l>>i;
l.clear();
l<<a;
l>>k;
if((i%2==0&&k%2==0)||(i%2!=0&&k%2!=0))
{
for(i=changdu(n);i<=changdu(a)+changdu(n)-1;i++)
{
n[i]=a[j];
j++;
}
puts(n);
}
else
{
for(i=changdu(a);i<=changdu(a)-1+changdu(n);i++)
{
a[i]=n[j];
j++;
}
puts(a);
}
}
int main()
{
string a,b,c;
int i,sum=0,j,t,n,max=0;
stringstream l;
char x[200],y[200];
gets(x);
gets(y);
lianjie(x,y);
return 0;
}
40分,求大神帮助!
修练者
你根本不用这么写!
题目已经说得很清楚了,实现字符串连接,所以输入的是字符串!
函数:
string strcats(string a,string b)
{
if((a[a.size()-1]-'0')%2==0&&(b[b.size()-1]-'0')%2==0||(a[a.size()-1]-'0')%2!=0&&(b[b.size()-1]-'0')%2!=0)
return a+b;
else return b+a;
}
主函数:
定义字符串类型 a,b;
输入a,b;
输出strcats(a,b);