这问题在哪?可以详细说说吗?

img


刚开始学,看不出问题,可以详细说一下问题在哪吗?可以改正好一下吗?

你的逗号都是中文分号,需要用英文分号;
name[i][j] != len这里也不对,两者类型不一样。name[i][j]是char类型,len是int类型。查找姓名需要用字符串比较,用到的函数时strcmp();
代码修改如下:
运行结果:

img

代码:

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

int main()
{
    const char name[][19]={"xiaol","xiaok","xiaoj","xiaoh","xiaohz"};
    char xiaohz[]="xiaohz";
    int i,j;
    const int len = strlen(xiaohz);
    for (i=0;i<5;i++)//这里是i<5
    {
        if(strcmp(name[i],xiaohz)==0) //字符串比较
            printf("第%d就是%s\n",i,xiaohz);
    }
    system("pause");
    return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
    const char name[][19] = { "xiaol","xiaok","xiaoj","xiaoh","xiaohz" };
    char xiaohz[] = "xiaohz";
    int i, j,num;
    const int len = strlen("xiaohz");
    num = sizeof(name) / sizeof(name[0]);
    for (i = 0; i < num; i++)
    {
        if (strlen(name[i]) != len)
            continue;
        for (j = 0; j < len&&name[i][j] == xiaohz[j]; j++);
        if (j == len)
            printf("第%d行字符串\"%s\"就是xiaohz", i+1, name[i]);
    }
    system("pause");
    return 0;
}