影院售票系统
来源:互联网 发布:windows 10 远程桌面 编辑:程序博客网 时间:2024/04/28 05:42
//
// main.m
// CinemaSystem
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import<Foundation/Foundation.h>
#import"Cinema.h"
//购买电影票
void buyMovieTicket(){
Cinema * cinema=[[Cinemaalloc]initWithCinemaName:@"万达影城"];
[cinema buyTicket];
}
//购买演唱会门票
void buySongTicket(){
}
int main(intargc,const char* argv[]) {
@autoreleasepool {
//打印欢迎信息
printf("************欢迎使用影院购票系统V1.0************\n");
//提示用户选择
printf("欢迎使用影院购票系统购买:1.电影票 2.影迷见面门票\n");
//当用户选择不同的功能,调用不同的函数
int num ;
scanf("%d",&num);
if(num==1){
buyMovieTicket();
}
else if(num==2 ){
buySongTicket();
}
else{
printf("输入错误,不在选择范围内,请重新输入\n");
}
//在函数中创建对象,开始购票
}
return 0;
}
//
// Commom.h
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import<Foundation/Foundation.h>
@interface Commom :NSObject
//名称
@propertyNSString* name;
//时长
@propertyint longTime;
//主演
@propertyNSString* actor;
//导演
@propertyNSString* director;
//上映时间
@propertyNSString*showTime;
//编号
@propertyint no;
@end
//
// Commom.m
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import"Commom.h"
@implementation Commom
@end
//
// Ticket.h
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import"Commom.h"
@interface Ticket :Commom
//排数
@propertyint rowNum;
//座位号
@propertyint colNum;
//地点
@propertyNSString* place;
//开始时间
@propertyNSString* startTime;
-(void)printTicket;
@end
//
// Ticket.m
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import"Ticket.h"
@implementation Ticket
-(void)printTicket{
NSLog(@"打印票的信息");
}
@end
//
// MovieTicket.h
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import"Ticket.h"
@interface MovieTicket :Ticket
//票价
@propertyfloat price;
//影票编号
@propertyint ticketNo;
@end
//
// MovieTicket.m
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import"MovieTicket.h"
@implementationMovieTicket
@end
//
// Cinema.h
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import<Foundation/Foundation.h>
#import"MovieTicket.h"
@interface Cinema :NSObject{
//电影院的名称
NSString * _cinemaName;
//票的集合
MovieTicket *tickets[5];
}
-(instancetype)initWithCinemaName:(NSString *)name;
//开始购票
-(void)buyTicket;
//显示正在上映的电影
-(void)list;
//选择电影
-(void)selectMovie;
//选择排数
-(void)selectRow;
//选择座位号
-(void)selectCol;
//开始支付
-(void)pay;
//出票
-(void)printTicket;
@end
//
// Cinema.m
// OC
//
// Created by niit on 15/7/27.
// Copyright (c) 2015年 niit. All rights reserved.
//
#import"Cinema.h"
#define ROW7
#define COL15
//定义一个全局变量,保存编号
int selectNo;
@implementation Cinema
//自定义构造方法
-(instancetype)initWithCinemaName:(NSString *)name{
self=[superinit];
if(self){
//初始化名字
_cinemaName=name;
//电影票数组初始化
for(inti=0;i<5;i++){
MovieTicket *mvticket=[MovieTicket new];
//给对象赋值
mvticket.name=[NSString stringWithFormat:@"变形金刚%d",i+1];
mvticket.longTime=120;
mvticket.actor=@"马克·沃尔伯格,妮可拉·佩尔茨,杰克·莱诺";
mvticket.director=@"迈克尔·贝";
mvticket.no=i+1;
mvticket.showTime=[NSString stringWithFormat:@"200%d-07-11",i+1];
mvticket.startTime=[NSString stringWithFormat:@"1%d:00",i+1];
mvticket.price=19.9f;
mvticket.place=[NSString stringWithFormat:@"影厅%d",i+1];
//把对象存到数组中
tickets[i]=mvticket;
}
}
return self;
}
//开始购票
-(void)buyTicket{
NSLog(@"开始购票");
[self list];
}
//显示正在上映的电影
-(void)list{
NSLog(@"显示正在上映的电影");
for(int i=0;i<5;i++){
NSLog(@"\n\n编号:%d 名称:%@ 导演:%@ 时长:%d分钟 上映时间:%@\n主演:%@ 开始时间:%@\n ",tickets[i].no,tickets[i].name,tickets[i].director,tickets[i].longTime,tickets[i].showTime,tickets[i].actor,tickets[i].startTime);
}
[self selectMovie];
}
//选择电影
-(void)selectMovie{
printf("请选择观看的电影编号:\n");
int num;
scanf("%d",&num);
if(num<0||num>5) {
return ;
}
else{
selectNo=num;
NSLog(@"您已经选择了影片:%@",tickets[selectNo-1].name);
}
[self selectRow];
}
//选择排数
-(void)selectRow{
printf("当前影厅共有:%d排,每排有%d座位\n",ROW,COL);
for(int i=-1;i<ROW;i++){
for(intj=-1;j<COL;j++) {
if(i==-1){
printf("%02d",j+1);
}elseif (j==-1){
printf("%02d",i+1);
}
else{
printf(" * ");
}
}
printf("\n");
}
printf("请选择排数:\n");
int num;
scanf("%d",&num);
if(num<0||num>7){
return;
}
else{
tickets[selectNo-1].rowNum=num;
}
[self selectCol];
}
//选择座位号
-(void)selectCol{
printf("您已经选择了%d排,请选择座位号\n",tickets[selectNo-1].rowNum);
int num;
scanf("%d",&num);
if(num<0||num>15){
return;
}
else{
tickets[selectNo-1].colNum=num;
}
NSLog(@"\n您选择的影片是:\n%@,开始时间:%@,票价:%.2f",tickets[selectNo-1].name,tickets[selectNo-1].startTime,tickets[selectNo-1].price);
printf("排数%d,座位号%d,以下是您的座位示意图:\n",tickets[selectNo-1].rowNum,tickets[selectNo-1].colNum);
for(int i=-1;i<ROW;i++){
for(intj=-1;j<COL;j++){
if(i==-1){
printf("%02d ",j+1);
}elseif (j==-1){
printf("%02d",i+1);
}
else if(i==(tickets[selectNo-1].rowNum-1)&&j==(tickets[selectNo-1].colNum-1)){
printf(" + ");
}
else{
printf(" * ");
}
}
printf("\n");
}
printf("请确认:1.确认 2.取消\n");
int flag;
scanf("%d",&flag);
if(flag==1){
[self pay];
}
return;
}
//开始支付
-(void)pay{
NSLog(@"\n开始支付....\n支付已完成....");
[self printTicket];
}
//出票
-(void)printTicket{
printf("------------出票------------\n");
NSLog(@"\n恭喜你,购票成功!您观看的影片是:\n%@,开始时间:%@,票价:%.2f,%@",tickets[selectNo-1].name,tickets[selectNo-1].startTime,tickets[selectNo-1].price,tickets[selectNo-1].place);
printf("排数%d,座位号%d\n",tickets[selectNo-1].rowNum,tickets[selectNo-1].colNum);
}
@end
- 影院售票系统
- C#影院售票系统
- 青鸟影院售票系统
- 影院售票系统源代码
- 影院售票系统
- 影院售票系统
- 影院售票
- 青鸟影院售票系统(一)
- 论学习的重要性之 -- 影院售票系统
- 深入.NET编程 第十一章 影院售票系统
- 影院售票管理源码
- 影院售票座位的设计
- Java毕业设计------基于JSP技术影院售票系统的设计与实现
- ACCPS2深入.net和c#编程影院售票系统 购票.打印.持续销售
- 售票系统
- 售票系统
- 售票系统
- 售票系统
- 找新朋友,(欧拉公式)
- 黑马程序员——Java基础——反射
- CodeForces 2A
- 取石子(一)-博弈数论
- Linux 解压zip命令
- 影院售票系统
- 合并文件脚本
- C语言缺陷与陷阱(6)
- UVALive 3942 Remember the Word(字典树+dp)
- 在GridView里添加一个功能按钮
- uva 11137 Ingenuous Cubrency
- HDOJ 1280 前m大的数(时间优化)
- 黑马程序员——IO流(IO流、字节流、字符流)
- C语言陷阱与缺陷(7)