#include
int read(char s[100]);
void print(char s[100]);
int read(char s[100])
{
int ch,i;
while((ch=getchar())!='\n')
{
for(i=0;i {
s[i]=ch;
}
}
s[i]='\0';
return i;
}
void print(char s[100])
{
int j,i=read(s);
for(j=i-1;j>=0;j--)
{
printf("%c",s[j]);
}
}
int main()
{
char s[100];
print(s);
return 0;
}
#include
int read();
char sh[100];
void print(char s[100]);
int read()
{
int ch,i=0;
while((ch=getchar())!='\n')
{
sh[i]=ch;
i++;
}
sh[i]='\0';
return i;
}
void print(char s[100])
{
int j,i=read(sh);
for(j=i-1;j>=0;j--)
{
printf("%c",s[j]);
}
}
int main()
{
print(sh);
getchar();
return 0;
}
代码错误 read() 改下
int read(char s[100])
{
int ch, i = 0;
while ((ch = getchar()) != '\n')
{
// for (i = 0; i{
s[i++] = ch;
// }
}
s[i] = '\0';
return i;
}
看情况你应该是少输出了一个字符,把s[i]='\0'改成s[i+1]='\0'就行了
楼上说的for也要去掉
你这是完整代码?看不懂这样写的意义,都没有获取输入,如何输出?read函数不应该有参数,记录输入要设置全局变量,局部变量不可能获取的