微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何获得反向字符串?

如何解决我如何获得反向字符串?

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    void str_prn(char **);
    int main(void)
    {
        char temp[80];
        char **str;
        
        int max;
        int i;
        printf("Number of Strings : ");
        scanf("%d",&max);
        str = (char **)malloc((max+1)*sizeof(char*));
        i=0;
        while(1)
        {
            printf("Input the string : ");
            scanf("%s",temp);
            str[i] = (char*)malloc(strlen(temp)+1);     
            strcpy(str[i],temp);
            
            i++;
            
            if(i ==max)
            {
                printf("Complete!!\n\n");
                break;
            }
        }
        str_prn(str);
        i=0;
        
        while(str[i]!=0)
        {
            free(str[i]);
            ++i;
        }
        free(str);
        system("PAUSE");
        return 0;
    }

    void str_prn(char **sp)
    {
        int i,len=0;
        char *reversedSp;
        
        len = strlen(*sp);
        
        while(*sp !=0)len++;
        {
            for(i=0;i<len;i++)
            {
                reversedSp = *sp
            }
        }
        
        return;
    }

我想得到反转输入字符串的结果。 我的意思是,如果我得到“abcdeqwerty”,结果应该是“edcbaytrewq”

首先我使用了 strrev func 但我的教授说不要使用 strrev。 所以我尝试使用for循环来处理这个问题。

函数 str_prn 中,我如何修改它才能工作?

解决方法

您可以尝试计算字符串的长度,然后从末尾开始......

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。