字符串逆序 以字符为元素组成数组


#include
int main()
    {char ch[80];
     int i;
     for(i=0;i<=80;i++)
         {scanf("%c",ch[i]);
         if(ch[i]=='\n')
         {break;
        }
        }
    for(int j=i;j<=0;j--)
        {printf("%c",ch[j]);
        }
    return 0;
    }

输入一个字符串,对该字符串进行逆序,输出逆序后的字符串。

输入格式:
输入在一行中给出一个不超过80个字符长度的、以回车结束的非空字符串。

输出格式:
在一行中输出逆序后的字符串。

一是6行for循环,i<80。不能等于80,越界了
二是12行,j>=0,不能j<=0啊,并且应该j=i-1,因为a[i]是'\n'啊

修改如下,供参考:

#include<stdio.h>
int main()
{
    char ch[80];
    int  i;
    for (i = 0; i < 80; i++)
    {
        scanf("%c", &ch[i]);
        if (ch[i] == '\n')
            break;
    }
    for (i--; i >= 0; i--)
    {
        printf("%c", ch[i]);
    }
    return 0;
}