支持复制编译无错
#include "myHead.h"
int main(void)
{
int userScan;
initMovie();
UI();
timeTable();
while (1)
{
printf("> ");
scanf("%d", &userScan);
checkScanf(userScan);
}
system("pause:");
return 0;
}
头文件
#pragma once #include#include #include typedef struct _user { char name[128]; int myMovie[4]; }UserType; typedef struct _movie { int price; int location; // 剩余座位 char name[128]; char Timer[8]; }MovieType; #define TICKET1 1 #define TICKET2 2 #define TICKET3 3 MovieType movie1; MovieType movie2; MovieType movie3; void initMovie(); void UI(); void timeTable(); void subscribe(int use); void checkScanf(int scan);
c
#include "myHead.h"
void initMovie()
{
strcpy(movie1.name, "美人鱼");
movie1.price = 32;
movie1.location = 30;
strcpy(movie1.Timer, "12:00");
strcpy(movie2.name, "老九门");
movie2.price = 20;
movie2.location = 30;
strcpy(movie2.Timer, "13:40");
strcpy(movie3.name, "狙击手");
movie3.price = 10;
movie3.location = 30;
strcpy(movie3.Timer, "16:00");
}
void UI()
{
printf("ttttt**********电影院售票系统**********n");
printf("1.预定电影票n2.退票n3.刷新时间表n");
}
void timeTable()
{
printf("n");
printf("电影名 放映时间 剩余座次 票价n");
printf("%s %s %d %dn", movie1.name, movie1.Timer, movie1.location, movie1.price);
printf("%s %s %d %dn", movie2.name, movie2.Timer, movie2.location, movie2.price);
printf("%s %s %d %dn", movie3.name, movie3.Timer, movie3.location, movie3.price);
printf("n");
}
void subscribe(int use)
{
switch (use)
{
case 1:
printf("扫码支付 ▓n");
movie1.location--;
printf("预约 美人鱼 成功!n");
printf("a");
break;
case 2:
printf("扫码支付 ▓n");
movie2.location--;
printf("预约老九门成功!n");
printf("a");
break;
case 3:
printf("扫码支付 ▓n");
movie3.location--;
printf("预约狙击手成功!n");
printf("a");
break;
default:
printf("暂时无法识别该序列号...n");
printf("a");
}
_sleep(2000);
system("cls");
UI();
}
void checkScanf(int scan)
{
switch (scan)
{
case 1:
system("cls");
printf("ttttt**********电影票预约**********nn");
printf("电影名 放映时间 剩余座次 票价n");
printf("%s %s %d %dn", movie1.name, movie1.Timer, movie1.location, movie1.price);
printf("%s %s %d %dn", movie2.name, movie2.Timer, movie2.location, movie2.price);
printf("%s %s %d %dn", movie3.name, movie3.Timer, movie3.location, movie3.price);
int use;
printf("> ");
scanf("%d", &use);
subscribe(use);
break;
case 2:
system("cls");
printf("ttttt**********电影票退订**********nn");
printf("退订序号:");
int src;
scanf("%d", &src);
if (src == TICKET1) {
printf("退订 美人鱼成功!an");
movie1.location++;
_sleep(2000);
system("cls");
UI();
break;
}
else if (src == TICKET2) {
printf("退订 老九门成功!an");
movie2.location++;
_sleep(2000);
system("cls");
UI();
break;
}
else if (src == TICKET3) {
printf("退订 狙击手成功an"); // define
movie3.location++;
_sleep(2000);
system("cls");
UI();
break;
}
case 3:
timeTable();
break;
default:
printf("无效输入");
}
}



