云淡风轻~~ 2017-09-02 07:24 采纳率: 100%
浏览 1199
已采纳

c语言中,关于反转字符串。请问为什么输入ABCDE,不能反转。

#include

int main()
{
int i;
char String[20];
char Reverse[]={0};
printf("请输入字符串");
gets(String);
printf("你所输入的字符串为%s\n",String);
int size;
size=sizeof(String);

for(i=0;i<size-1;i++)
{
    Reverse[size-i-2]=String[i];
}

printf("输出源字符串:%s\n",String);
printf("输出目标字符串:%s\n",Reverse);

return 0;

}

  • 写回答

6条回答 默认 最新

  • 战在春秋 2017-09-02 08:06
    关注

    修改后的代码如下,关键处有注释:

     int main()
    {
        int i;
        char String[20];
        char Reverse[20] = { 0 };  //原代码Reverse大小为1
        printf("请输入字符串");
        gets_s(String);
        printf("你所输入的字符串为%s\n", String);
        int size;
        size = strlen(String); //用strlen库函数获取输入字符串的长度,需包含string.h头文件
    
        for (i = 0; i < size ; i++) //循环终止条件及循环体写法应修改为此
        {
            Reverse[size-i-1] = String[i];
        }
        printf("输出源字符串:%s\n", String);
        printf("输出目标字符串:%s\n", Reverse);
    
        return 0;
    
    }
    

    如果对您有帮助,请采纳答案好吗,谢谢!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题