C++这个程序怎么写

img


n,m;
char name[21];
char name1[21];

  scanf("%d%d",&n,&m);
  for(int i=1;i<=n;i++)
  {
      for(int j=1;j<=m;j++)
          scanf("%s",&name);
  }
  scanf("%d",&k);
  for(int i=1;i<=k;i++)
  {
      scanf("%s",&name1);
  }
  for(int i=1;i<=n;i++)
  {
      for(int j=1;j<=m;j++)
      {
          if(strstr(name,name1))
              printf("Studay hard!");
          else
             printf("%s",name1);     
      }
  }

}思路是这样但我不会写了思路是这样但我不会写了


#include"stdio.h"
#include"string.h"
#define NUM 100

int main()
{
    char stu[NUM][1024];
    char stuy[NUM][1024];
    char strname[NUM][1024];
    int m, n;
    scanf("%d%d",&n,&m);
    for (int i = 0; i < n*m; i++)
    {
        scanf("%s",&stu[i]);
        int len = strlen(stu[i]);
        for (int j = 0; j < len-2; j++)
        {
            strname[i][j] = stu[i][j];
        }
        strname[i][len - 2] = '\0';
        for (int j = len - 2; j < len; j++)
        {
            stuy[i][j- len+ 2] = stu[i][j];
        }
        stuy[i][2] = '\0';
    }
    int k = 0;
    char str[1024];
    char stk[NUM][1024];
    int hard = 0;
    int is = 0;
    scanf("%d",&k);
    for (int i = 0; i < k; i++)
    {
        hard = 0;
        scanf("%s", &str);
        for (int j = 0; j < n*m; j++)
        {
            if (strcmp(str, strname[j])==0)
            {
                hard = 1;
                break;
            }
        }
        if (hard==0)
        {
            strcpy(stk[is],str);
            is++;
        }
    }
    if (is!=0)
    {
        for (int i = 0; i < is; i++)
        {
            printf("%s\n", stk[i]);
        }
    }
    else
    {
        printf("Study hard!");
    }
    return 0;
}