字符串逆序输出,要求调用函数实现

比较简单,要求调用函数实现

#include<stdio.h>
#include<string.h>
void inv(char s1[],char s2[])
{
    int l,i;
    l = strlen(s1);
    for (i = l-1;i >= 0;i--)
    {
       s2[l-i-1] = s1[i];
    }
}
int main()
{
    int i;
    char s1[100] = {0},s2[100] = {0};
    while (~scanf("%s",s1))
    {
       inv(s1,s2);
        for (i = 0;i < strlen(s2);i++)
        {
            printf("%c",s2[i]);
        }
        //for(i = strlen(s1)-1;i >= 0;i --) printf("%c",s1[i]);//puts(s2);
        //printf("\n");
        puts("");
    }
}

这里有一个坑,这里读取字符串不要用gets函数,会读出空格,scanf不存在这个问题。

另外,为避免出现数组输出乱码,在定义字符串数组的时候需要先初始化一下。

你可能感兴趣的:(字符串逆序输出,要求调用函数实现)