求C语言编写这个程序,实在不会了

输入格式:
输入数据有多组,每组数据以一个整数n开始,后面有n个字符串,字符串之间以空格分隔。

输出格式:
对每组测试数据,输出这个n个字符串是否是一个合法的接龙,如果是输出“Yes",不是输出“No”,每个输出占一行。

输入样例:
3 go ok king2byebye

输出样例:
YesNo

如果问题得到解决,请点我回答左上角的采纳

#include "stdio.h"
#include "stdlib.h"
#include "string.h"

int main()
{
    int n;
    scanf("%d", &n);
    char s[100];
    int result[100];
    scanf("%s", &s[0]);
    for (int i = 0; i < n - 1; i++)
    {
        char last = s[strlen(s) - 1];
        scanf("%s", &s[0]);
        result[i] = (s[0] == last);
    }
    int a = 1;
    for (int i = 0; i < n - 1; i++)
    {
        if (!result[i]) a = 0;
    }
    if (a == 1) printf("Yes");
    else printf("No");
    printf("\n");
    return 0;
}