#include<stdio.h>
#include<stdlib.h>
#include<string.h>
typedef struct
{
char name[10];
int height;
int weight;
}person;
int npcmp(const person *x, const person *y)
{
return strcmp(x->name, y->name);
}
int main(void)
{
person x[] = {
{"aa",155,45},
{"bb",166,76},
{"cc",171,72},
{"dd",165,54},
{"ee",159,43},
printf("成功");
};
int nx = sizeof(x) / sizeof(x[0]);
int retry;
printf("搜素.");
do
{
person temp, *p;
printf("名字:");
scanf_s("%s", temp.name);
p=(person*) bsearch(&temp, x, nx, sizeof(person), (int(*)(const void*, const void*))npcmp);
if (p == NULL)
printf("失败");
else
{
printf("x[%d] :%s %dcm %dkg \n", (int)(p - x), p->name, p->height, p->weight);
}
printf("(1) shi / (2");
scanf_s("%d", &retry);
} while (retry == 1);
return 0;
}
为什么执行后什么都没有呢
#include<stdlib.h>
#include<string.h>
typedef struct
{
char name[10];
int height;
int weight;
}person;
int npcmp(const person *x, const person *y)
{
return strcmp(x->name, y->name);
}
int main(void)
{
person x[] = {
{"aa",155,45},
{"bb",166,76},
{"cc",171,72},
{"dd",165,54},
{"ee",159,43},
printf("成功");
};
int nx = sizeof(x) / sizeof(x[0]);
int retry;
printf("搜素.");
do
{
person temp, *p;
printf("名字:");
scanf_s("%s", temp.name);
p=(person*) bsearch(&temp, x, nx, sizeof(person), (int(*)(const void*, const void*))npcmp);
if (p == NULL)
printf("失败");
else
{
printf("x[%d] :%s %dcm %dkg \n", (int)(p - x), p->name, p->height, p->weight);
}
printf("(1) shi / (2");
scanf_s("%d", &retry);
} while (retry == 1);
return 0;
}
为什么执行后什么都没有呢