printf("%s",str); 中 %s 改成 %c 并且str前*加
printf("%c",*str);
%s 是从当前字符地址开始一直输出到'\0'字符串结束
你要每次循环只输出一个字符应该用 %c
#include<stdio.h>
int main()
{
char *str,a[80];
gets(a);
for (str = a; *str!='\0'; str++)
{
printf("%c",*str); //%s 改成 %c 并且str前*加
}
return 0;
}
如有帮助,望采纳!谢谢!