将我输入的英文单词储存到一维数组中

img


这个程序可以把我输入的单词储存到一维数组之中去吗?如果不行的话,可以帮我改进一下吗?谢谢

单词字符串的数组需要二维数组才行。


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

int main()
{
    int i = 0, cnt = 0;
    char y, a[100][20], buf[20];
    while (1)
    {
        y = getchar();
        if (y == ' ' || y == '\n')
        {
            buf[i] = '\0';
            strcpy(a[cnt++], buf);
            i = 0;
        }
        else
        {
            buf[i++] = y;
        }
        if (y == '\n')
            break;
    }
    for (i = 0; i < cnt; i++)
        printf("%s\n", a[i]);

    return 0;
}

img

scanf那里不需要加取址符