#include
struct student
{
int bh;
char name[20];
char zl[20];
int sl;
char time[20];
char add[20];
}a[100];
int i=0;
int main()
{
void entering();
void query();
void xiugai();
void show();
void count();
int n;
do
{
printf("1.录入信息\n");
printf("2.信息修改\n");
printf("3.信息查询\n");
printf("4.信息显示\n");
printf("5.信息统计\n");
printf("6.退出\n");
scanf("%d",&n);
switch(n)
{
case 1:entering();break;
case 2:xiugai();break;
case 3:query();break;
case 4:show();break;
case 5:count();break;
case 6:printf("退出\n");break;
default:printf("enter data error!\n");
}
}
while(n!=6);
}
void entering()
{
i++;
printf("编号:");
scanf("%d",&a[i].bh);
printf("客户姓名:");
scanf("%s",a[i].name);
printf("订餐种类:");
scanf("%s",a[i].zl);
printf("订餐数量:");
scanf("%d",&a[i].sl);
printf("送餐时间:");
scanf("%s",a[i].time);
printf("送餐地址:");
scanf("%s",a[i].add);
}
void query()
{
int bh;
printf("请输入编号:");
scanf("%d",&bh);
if (bh==a[i].bh)
{
printf("编号:%d\n",a[i].bh);
printf("客户姓名:%s\n",a[i].name);
printf("订餐种类:%s\n",a[i].zl);
printf("订餐数量:%d\n",a[i].sl);
printf("送餐时间:%s\n",a[i].time);
printf("送餐地址:%s\n",a[i].add);
}
else
printf("查无此客户,请重新输入\n");
}
void query()
{
int bh;
printf("请输入编号:");
scanf("%d",&bh);
for(i=0;i<100;i++)
{
if (bh==a[i].bh)
{
printf("编号:%d\n",a[i].bh);
printf("客户姓名:%s\n",a[i].name);
printf("订餐种类:%s\n",a[i].zl);
printf("订餐数量:%d\n",a[i].sl);
printf("送餐时间:%s\n",a[i].time);
printf("送餐地址:%s\n",a[i].add);
break;
}
}
if(bh!=a[i].bh)
printf("查无此客户,请重新输入\n");
}
我试了下,这样就可以了。
你根本就没有查询的逻辑,只是和最后一次输入的比较
// Q717637.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdio.h"
struct student
{
int bh;
char name[20];
char zl[20];
int sl;
char time[20];
char add[20];
}a[100];
int i = 0;
void entering()
{
i++;
printf("编号:");
scanf("%d", &a[i].bh);
printf("客户姓名:");
scanf("%s", a[i].name);
printf("订餐种类:");
scanf("%s", a[i].zl);
printf("订餐数量:");
scanf("%d", &a[i].sl);
printf("送餐时间:");
scanf("%s", a[i].time);
printf("送餐地址:");
scanf("%s", a[i].add);
}
void query()
{
int bh;
printf("请输入编号:");
scanf("%d", &bh);
for (int j = 0; j < i; j++)
{
if (bh == a[j].bh)
{
printf("编号:%d\n", a[j].bh);
printf("客户姓名:%s\n", a[j].name);
printf("订餐种类:%s\n", a[j].zl);
printf("订餐数量:%d\n", a[j].sl);
printf("送餐时间:%s\n", a[j].time);
printf("送餐地址:%s\n", a[j].add);
}
}
if (j == i)
printf("查无此客户,请重新输入\n");
}
int main()
{
int n;
do
{
printf("1.录入信息\n");
printf("2.信息修改\n");
printf("3.信息查询\n");
printf("4.信息显示\n");
printf("5.信息统计\n");
printf("6.退出\n");
scanf("%d", &n);
switch (n)
{
case 1:entering(); break;
//case 2:xiugai(); break;
case 3:query(); break;
//case 4:show(); break;
//case 5:count(); break;
case 6:printf("退出\n"); break;
default:printf("enter data error!\n");
}
} while (n != 6);
}