scanf("%s",&b[30]);
这不对
你这截图不全啊,主函数呢?
a[i]是个什么啊,连a的定义也不放出来,鬼知道哪里不对
struct person
{
char liexing[30];
char name[30];
char phone[20];
}a[100];
//查找定位
void search()
{
int i;
char b[30]={0};
printf("请输入姓名:");
scanf("%s",&b[30]);
for(i=0;i<100;i++)
{
if( strcmp(a[i].name,b) == 0 )
{
printf("\n");
printf("%s\t", a[i].liexing);
printf("%s\t", a[i].name);
printf("%s\n", a[i].phone);
break;
}
}
//printf("不存在该人通讯信息!\n");
Sleep(2000);
if(getchar()=='\n')
system("cls");
}
//查找定位
void search()
{
int i;
char b[30] = { 0 };
printf("请输入姓名:");
scanf_s("%s", b,30);//指定缓冲区大小的参数,表示最多读取n-1个字符,不加的话,编译器会出错,无法进行正常的字符串输入
for (i = 0; i < 100; i++)
{
if (strcmp(a[i].name, b) == 0)
{
printf("\n");
printf("%s\t", a[i].liexing);
printf("%s\t", a[i].name);
printf("%s\n", a[i].phone);
break;
}
}
printf("不存在该人通讯信息!\n");
Sleep(2000);
if (getchar() == '\n')
system("cls");
}