字符指针数组的拓展用法(二维字符数组)

输入一个学生姓名,在含有4个学生的名单中查找该学生是否存在,并输出查找结论;

#include <stdio.h>
#include <string.h>
int main()
{
    char *name[4]={"Tom","Smith","Ellen","Fox"};
    char sn[20];
    int i;
    scanf("%s",sn);
    for(i=0;i<4;i++)
    {
        if(strcmp(sn,name[i])==0)
            break;
    }
    if(i<4) printf("%s is here\n",sn);
    else printf("Sorry,Not found");
    return 0;
}

将上题改变一下,如果四个学生的姓名是需要输入的呢?程序又该怎么变呢?
字符指针数组必须要初定义,不能输入?

#include <stdio.h>
#include <string.h>
int main()
{
    int n;
    int i;
    char s[81][81],s1[81];
    scanf("%d",&n);
    char *name[n];
    for(i=0;i<n;i++)
    {
        scanf("%s",s[i]);
        name[i]=s[i];
    }
    scanf("%s",s1);
    for(i=0;i<n;i++)
    {
        if(strcmp(s1,name[i])==0)
            break;
    }
    if(i<n) printf("YES");
    else printf("NO");
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_43008804/article/details/82668535
今日推荐