c++一个字符串反转函数 s输出时有乱码

#include"iostream.h"
#include<string.h>
void main()
{int i,k;
char a[10];
k=0;
cout<<"请输入字符(最多10个)"<<"\n";
cin>>a;
k=strlen(a);
for(i=0;i<=8;i++)
{a[i]=a[k-1-i];
}
cout<<a;
}

第一, 你把字符串固定为9了, 但是输入没有限制
然后,反转时,你思路错了, 只要对半翻转就可以了

请采纳,谢谢追问

for(i=0;i>a[i];}
k=strlen(a);
for(i=0;i<=k/2;i++)
{a[i]=a[k-1-i];}
cout<<a;
}
改成这样后,输入时不能停止

温馨提示:答案为网友推荐,仅供参考
相似回答