ÎÒÓÐÒ»»ð³µÆ±¶©¹ºÏµÍ³³ÌÐò£¬Microsoft Visual C++ 6.0»·¾³ÔËÐеģ¬ÄÄλ´óÏÀ°ïæ¸Ä¸Ä
#include
#include
#include
#include
#define SIZE 3
#define FORMAT " %-3d\t %-6s\t\t%-6s\t %-6s %-10d %-10d %-d\n"
struct busses
{ int num;
char outtime[6];
char startplace[10];
char endplace[10];
int runtime;
int carry;
int crush;}bus[SIZE];
int n,j,n1=0,a=0;
void welcome();
void append();
void browse();
void query();
void info();
void modify();
void buyticket();
void backticket();
void exitsystem();
void see();
void main()
{welcome();
loop1:textcolor(15);
textbackground(1);
clrscr();
printf("\n");
printf("\t\t\t * * * * * * * * * * * * * *\n");
printf("\t\t\t * ³µÆ±¹ÜÀíϵͳ *\n");
printf("\t\t\t * * * * * * * * * * * * * *\n");
printf("--------------------------------------------------------------------------------");
printf("\t\t ÊäÈëÊý¾Ý:Input information...........1\n");
printf("\t\t ä¯ÀÀÐÅÏ¢:Browse information...........2\n");
printf("\t\t ×·¼ÓÊý¾Ý:Append information...........3\n");
printf("\t\t ²éѯÐÅÏ¢:Query information...........4\n");
printf("\t\t ÐÞ¸ÄÊý¾Ý:Modify information...........5\n");
printf("\t\t ¶©¹º³µÆ±:Buy ticket ...........6\n");
printf("\t\t Í˶©³µÆ±:Return ticket ...........7\n");
printf("\t\t Í˳öϵͳ:Exit system ...........8\n");
printf("--------------------------------------------------------------------------------");
printf("ÇëÔÚ(1-8)Ö®¼äÑ¡ÔñÄúÒªµÄ²Ù×÷:");
scanf("%d",&n);
while(sizeof(n)!=2 || n<=0 || n>8 )
{
printf("ÄúÊäÈëµÄÊý¾Ý³¬¹ý1-8!\n");
printf("ÇëÖØÐÂÊäÈë:");
scanf("%*c%d",&n);
}
switch(n)
{
case 1:info();break;
case 2:browse();break;
case 3:printf("Ìí¼Ó³µ´Î!\n\nÇëÊäÈëÄúÒªÌí¼ÓµÄ¼Ç¼Êý:");scanf("%d",&n1);for(j=0;j
case 4:query();break;
case 5:modify();break;
case 6:buyticket();break;
case 7:backticket();break;
case 8:exitsystem();break;
}
goto loop1;
}
void append()
{int i=a;
printf("ÇëÊäÈë°à´Î:\nNo:");
scanf("%d",&bus.num);
printf("ÇëÊäÈë·¢³µÊ±¼ä:");
scanf("%s",bus.outtime);
printf("ÇëÊäÈëÆðµã:");
scanf("%s",bus.startplace);
printf("ÇëÊäÈëÖÕµã:");
scanf("%s",bus.endplace);
printf("ÇëÊäÈëÐгµÊ±¼ä:");
scanf("%d",&bus.runtime);
printf("ÇëÊäÈë¶î¶¨ÔØÁ¿:");
scanf("%d",&bus.carry);
printf("ÇëÊäÈëʵ¼ÊÈËÊý:");
scanf("%d",&bus.crush);
printf("³µ´Î\t·¢³µÊ±¼ä\tÆðµã\t ÖÕµã ÐгµÊ±¼ä ¶î¶¨ÔØÁ¿ ʵ¼ÊÈËÊý\n");
printf(FORMAT,bus.num,bus.outtime,bus.startplace,bus.endplace,\
bus.runtime,bus.carry,bus.crush);
a++;
sleep(1);
return;
}
void info()
{
int i;
for(i=0;i
{
append();
}
printf("°´ÈÎÒ⽡»ØÖ÷½çÃæ...");
getch();
return;
}
void browse()
{ int i;
printf("³µ´Î\t·¢³µÊ±¼ä\tÆðµã\t ÖÕµã ÐгµÊ±¼ä ¶î¶¨ÔØÁ¿ ʵ¼ÊÈËÊý\n");
for(i=0;i
{ printf(FORMAT,bus.num,bus.outtime,bus.startplace,bus.endplace,\
bus.runtime,bus.carry,bus.crush);
}
printf("°´ÈÎÒ⽡»ØÖ÷½çÃæ...");
getch();
return;
}
void query()
{
int num,i;
char ch;
loop:printf("ÇëÊäÈë°à´Î:");
scanf("%d",&num);
for(i=0;i
if(num==bus.num)
{
printf("ÄúËùÒª²éѯµÄÐÅϢΪ:\n");
printf("³µ´Î\t·¢³µÊ±¼ä\tÆðµã\t ÖÕµã ÐгµÊ±¼ä ¶î¶¨ÔØÁ¿ ʵ¼ÊÈËÊý\n");
printf(FORMAT,bus.num,bus.outtime,bus.startplace,\
bus.endplace,bus.runtime,bus.carry,bus.crush);
}
if(num>a || num<0)
{
loop9: printf("ÄúÊäÈëµÄ°à´Î´íÎó,ÊÇ·ñÖØÐÂÊäÈë(Y/N):");
scanf("%*c%c",&ch);
if(ch=='Y' || ch=='y')
goto loop;
else
if (ch=='N' || ch=='n')
return;
else
goto loop9;
}
else
{
printf("°´ÈÎÒ⽡»ØÖ÷½çÃæ...");
getch();
return;
}
}
void buyticket()
{ char ch;
int num,i;
loop2:see();
printf("ÇëÊäÈ빺Ʊ³µ´Î:");
scanf("%d",&num);
for(i=0;i
if(num==bus.num)
break;
if(i>=a)
{printf("ûÕÒµ½ÄúËùÒª¹ºÆ±µÄ³µ´Î,ÇëÖØÐÂÊäÈë:\n");goto loop2;
}
if(bus.carry>bus.crush && strcmp(bus.outtime,"10:00")>0)
{
bus.crush++;
printf("¹ºÆ±³É¹¦!\n");
see();
}
else
printf("ÈËÊýÒÑÂú»ò³µÒÑ·¢³ö,²»ÄܹºÂò³µÆ±!\n");
loop10:printf("ÄúÊÇ·ñÒª¼ÌÐø¹ºÂò³µÆ±(Y/N):");
scanf("%*c%c",&ch);
if(ch=='Y' || ch=='y')
goto loop2;
else
if (ch=='N' || ch=='n')
return;
else
goto loop10;
}
void backticket()
{
int i,num;
char ch;
loop3:see();
printf("ÇëÊäÈëÍËÆ±³µ´Î:");
scanf("%d",&num);
for(i=0;i
if(num==bus.num)
break;
if(i>=a)
{printf("ûÕÒµ½ÄúËùÒªÍËÆ±µÄ³µ´Î,ÇëÖØÐÂÊäÈë!\n\n");
goto loop3;
}
if(strcmp(bus.outtime,"10:00")>0)
{bus.crush--;
printf("ÍËÆ±³É¹¦!\n");
see();
}
else
printf("³µÒÑ·¢³ö,²»ÄÜÍËÆ±!\n");
loop11:printf("ÄúÊÇ·ñÒª¼ÌÐøÍËÆ±(Y/N)");
scanf("%*c%c",&ch);
if(ch=='Y' || ch=='y')
goto loop3;
else
if (ch=='N' || ch=='n')
return;
else
goto loop11;
}
void modify()
{
int num,i,t;
char ch;
t=a;
printf("³µ´Î\t·¢³µÊ±¼ä\tÆðµã\t ÖÕµã ÐгµÊ±¼ä ¶î¶¨ÔØÁ¿ ʵ¼ÊÈËÊý\n");
for(i=0;i
printf(FORMAT,bus.num,bus.outtime,bus.startplace,bus.endplace,\
bus.runtime,bus.carry,bus.crush);
loop5:printf("ÇëÊäÈëÐ޸ijµ´Î:");
scanf("%d",&num);
for(i=0;i
if(num==bus.num) break;
if(i>=t)
{printf("ûÕÒµ½ÄúËùÒªÍËÆ±µÄ³µ´Î,ÇëÖØÐÂÊäÈë:\n");
goto loop5;
}
printf(FORMAT,bus.num,bus.outtime,bus.startplace,bus.endplace,\
bus.runtime,bus.carry,bus.crush);
printf("ÇëÊäÈëÐÞ¸ÄÐÅÏ¢:\n");
a=i;
append();
printf("ÄúÊÇ·ñÐèÒª¼ÌÐøÊäÈë(Y/N):");
scanf("%*c%c",&ch);
loop12:if(ch=='Y' || ch=='y')
goto loop5;
else
if (ch=='N' || ch=='n')
{a=t;
return;}
else
goto loop12;
}
void see()
{ int i;
printf("³µ´Î\t·¢³µÊ±¼ä\tÆðµã\t ÖÕµã ÐгµÊ±¼ä ¶î¶¨ÔØÁ¿ ʵ¼ÊÈËÊý\n");
for(i=0;i
{ printf(FORMAT,bus.num,bus.outtime,bus.startplace,bus.endplace,\
bus.runtime,bus.carry,bus.crush);
}
}
void welcome()
{int i,j;
char str[30]={"»¶ÓʹÓ󵯱¹ÜÀíϵͳ!"};
textcolor(6);
textbackground(0);
clrscr();
for(i=0;str!='\0';i+=2)
{for(j=30+i;j>2;j--)
{
delay(3000);
gotoxy(30+i,3);
printf("%c%c",str,str[i+1]);
}
}
gotoxy(40,6);
printf("Ñз¢Ð¡×é:½¸Õ,ÀîÓÂ,ÑîºéÑà");
gotoxy(30,13);
printf("°´ÈÎÒ⽡½øÈëϵͳ...");
getch();
}
void exitsystem()
{int i;
clrscr();
for (i=0;i<15;i++)
{delay(100000);
textcolor(i);clrscr();
gotoxy(30,12);
printf("ллʹÓ󵯱¹ÜÀíϵͳ!");
}
window(45,25,65,25);
textcolor(15);clrscr();
printf("°´ÈÎÒâ¼üÍ˳öϵͳ...");
getch();
exit(0);
} |