#include<stdio.h>
#include<string.h>
#define MAXSIZE 20
struct
{
int tn[5];
char starttime[32];
char startplace[32];
char endplace[32];
float time;
float price;
int num;
}Ticket[MAXSIZE];
void Add(int * );
void Search(int);
void Update(int);
void Delete(int *);
void Show(int);
int main()
{
int i;
int count=0;
do
{
printf("\n");
printf("*******************车票管理系统*********************\n");
printf("******* 1.........车票添加 ******************\n");
printf("******* 2.........车票查询 ******************\n");
printf("******* 3.........车票修改 ******************\n");
printf("******* 4.........车票显示 ******************\n");
printf("******* 5.........车票删除 ******************\n");
printf("******* 6.........退出系统 ******************\n");
printf("****************************************************\n");
scanf("%d",&i);
switch(i)
{case 1:Add(&count);
break;
case 2:Search(count);
break;
case 3:Update(count);
break;
case 4:Show(count);
break;
case 5:Delete(&count);
break;
case 6:break;
default:printf("错误选择。请重选");
break;
}
}while(i!=6);
return 0;
}
void Add(int *count)
{int i, in_Ticket;
printf("请输入车次: ");
scanf("%d",&in_Ticket);
for(i=0;i<*count;i++)
if(Ticket[i].tn==in_Ticket)
{
printf("已拥有相同的车次:");
return;
};
Ticket[i].tn=in_Ticket;
printf("请输入出发时间:\n");
scanf("%s",Ticket[i].starttime);
printf("请输入起点站:\n");
scanf("%s",Ticket[i].startplace);
printf("请输入终点站: \n");
scanf("%s",Ticket[i].endplace);
printf("请输入用时: \n");
scanf("%d",&Ticket[i].time);
printf("请输入价格: \n");
scanf("%d",&Ticket[i].price);
printf("请输入剩余票数: \n");
scanf("%d",&Ticket[i].num);
(*count)++;
}
void Search(int count)
{
int i,tn,flag=1;
printf("请输入要查询的车次:");
scanf("%s",&tn);
for(i=0;i<count&&flag;i++)
if(Ticket[i].tn==tn)
{
printf("出发时间:%s",Ticket[i].starttime);
printf("起点站:%s",Ticket[i].startplace);
printf("终点站:%s",Ticket[i].endplace);
printf("时长:%s",Ticket[i].time);
printf("价格: %d",Ticket[i].price);
printf("剩余票数: %d:",Ticket[i].num);
flag=0;
}
else
printf("没有查询到车票信息!!");
}
void Update(int count)
{
int i,tn,flag=1;
printf("请输入您所要修改的车次:");
scanf("%s",&tn);
for(i=0;i<count&&flag;i++)
if( Ticket[i].tn==tn)
{
printf("请输入出发时间:\n");
scanf("%s",Ticket[i].starttime);
printf("请输入起点站:\n");
scanf("%s",Ticket[i].startplace);
printf("请输入终点站: \n");
scanf("%s",Ticket[i].endplace);
printf("请输入用时: \n");
scanf("%d",&Ticket[i].time);
printf("请输入价格: \n");
scanf("%d",&Ticket[i].price);
printf("请输入剩余票数: \n");
scanf("%d",&Ticket[i].num);
flag=0;
}
else
printf("没有查询到可以修改的车次!!");
}
void Show(int count)
{
int i;
printf("\n");
printf("***************************** ****************************** \n");
printf("**车次 出发时间 起点站 终点站 时长 价格 剩余票数** \n");
for(i=0;i<count;i++)
{
printf("%10s",Ticket[i].tn);
printf("12%s",Ticket[i].starttime);
printf("12%s",Ticket[i].startplace);
printf("12%s",Ticket[i].endplace);
printf("12%s",Ticket[i].time);
printf("10%d",Ticket[i].price);
printf("10%d",Ticket[i].num);
}
}
void Delete(int *count)
{int i,j,*tn,flag=1;
printf("请输入要删除数据的车次:");
scanf("%S",&tn);
for(i=0;i<*count&&flag;i++)
if( Ticket[i].tn==tn)
{for(j=i;j<*count-1;j++)
Ticket[j]=Ticket[j+1];
flag=0;
(*count)--;
}
else
printf(" 没有查询到可删除的车次!!");
}
有什麽错误提示你倒是给贴出来啊
void Add(int count)
这里count是int型,但函数处理中为啥用(*count)++呢,count又不是指针,是写错了么