我一开始写的是这样写的:
#include<iostream>
using namespace std;
int main()
{
//freopen("xxx.in","r",stdin);
//freopen("yyy.out","w",stdout);
string s;
getline(cin,s);
for(int i=1;i<s.size();i++)
{
s.insert(i," ");
}
for(int i=0;i<s.size();i++)
{
cout << s[i];
}
//fclose(stdin);
//fclose(stdout);
return 0;
}
是不对的,因为第11行~14的循坏实现的是在字符串前面加等量的空格,所以导致输出是全是空格。
下面的程序是对的:
方法1:
#include<iostream>
using namespace std;
int main()
{
//freopen("xxx.in","r",stdin);
//freopen("yyy.out","w",stdout);
string s;
getline(cin,s);
for(int i=1;i<s.size();i+=2)
{
s.insert(i," ");
}
for(int i=0;i<s.size();i++)
{
cout << s[i];
}
//fclose(stdin);
//fclose(stdout);
return 0;
}
方法2:
#include<iostream>
using namespace std;
int main()
{
//freopen("xxx.in","r",stdin);
//freopen("yyy.out","w",stdout);
string s,ss;
getline(cin,s);
for(int i=0;i<s.size();i++)
{
ss=ss+s[i]+" ";
}
for(int i=0;i<ss.size();i++)
{
cout << ss[i];
}
//fclose(stdin);
//fclose(stdout);
return 0;
}