看看这个咋写,用数组翻转?

img


看看这个有办法解决吗,刚学,想了蛮久,这个翻转。用数组吗?而且是每个单词单独翻转


#include <string.h>
#include <stdio.h>
#include <ctype.h>

void restr(char s[], int len)
{
    char t;
    for (int i = 0; i < len; i++, len--)
    {
        t = s[i];
        s[i] = s[len];
        s[len] = t;
    }
}

int main()
{
    char str[301] = {0};
    char ch, buf[31] = {0};
    int inx = 0, cnt = 0;
    while ((ch = getchar()) != '\n')
    {
        if (isalpha(ch))
        {
            buf[inx++] = ch;
        }
        else
        {
            if (inx > 0)
            {
                restr(buf, inx-1);
                buf[inx] = '\0';
                strcat(str, buf);
                strcat(str, " ");
                inx = 0;
                cnt++;
            }
        }
    }
    printf("%d\n%s\n", cnt, str);
}