A. 汽車租賃系統的c語言,數據結構的語言程序
剛寫完,好累.還有很多bug,你看看會不會改,不行的話我有時間再幫你改.各位有什麼意見的也可以告訴我
編譯器是VC6
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MaxNum 20
typedef struct A{
int No; /*車輛編號*/
char Type; /*車類型*/
int Payment;/*租費*/
int fine; /*罰金*/
struct A *next;/*指向下一個結點*/
} car;
typedef struct B{
int No; /*顧客編號*/
char Name[20]; /*顧客姓名*/
char License; /*執照類別*/
int carNo; /*租憑的車輛編號*/
int Day; /*租的天數*/
int DelayDay;/*延遲的天數*/
struct B *next;
} client;
struct C{/*這個結構體是車輛鏈表的頭結點,A,B,C每種類型有一種*/
char Type;/*車輛型號*/
int avl; /*可用數*/
car *head;/*指向車輛結點*/
} headNode[3]={{'A',MaxNum,NULL},{'B',MaxNum,NULL},{'C',MaxNum,NULL}} ;
client *allClien=NULL;
int pay[3]={400,300,200},fine[3]={600,500,400};
void init();/*初始化*/
int menu();/*簡單菜單界面*/
void search();/*查詢*/
void carSc(); /*查詢車輛*/
void clientSc();/*查詢顧客*/
void rent(); /*租車*/
void giveback();/*還車*/
void addCli(client *cli);/*向顧客鏈表增加顧客*/
client* delCli(int clientNo);/*從顧客鏈表刪除一個顧客*/
void addCar();/*向車輛鏈表歸還車輛*/
car* delCar();/*從車輛鏈表拿出一輛車*/
void Exit();/*退出*/
void main()
{
init();
while(1)
{
switch(menu())
{
case 1:search();break;
case 2:rent();break;
case 3:giveback();break;
case 4:Exit();
default:;
}
}
}
void init()
{
int i;
car *ptr,*pa=headNode[0].head,*pb=headNode[1].head,*pc=headNode[2].head;
for(i=1;i<=MaxNum;i++)
{
ptr=(car *)malloc(sizeof(car));
ptr->No=100+i;
ptr->Type='A';
ptr->Payment=400;
ptr->fine=600;
pa=ptr;
pa=ptr->next;
ptr=ptr=(car *)malloc(sizeof(car));
ptr->No=200+i;
ptr->Type='B';
ptr->Payment=300;
ptr->fine=500;
pb=ptr;
pb=ptr->next;
ptr=(car *)malloc(sizeof(car));
ptr->No=300+i;
ptr->Type='C';
ptr->Payment=200;
ptr->fine=400;
pc=ptr;
pc=ptr->next;
}
pa=NULL;pb=NULL;pc=NULL;
}
int menu()
{
int choice;
printf("\n\n\n選擇服務:1.查詢 2.租車 3.歸還 4.退出\n");
scanf("%d",&choice);
while(choice!=1&&choice!=2&&choice!=3&&choice!=4)
{
printf("\n輸入有誤,重新輸入:");
scanf("%d",&choice);
}
return choice;
}
void search()
{
int choice;
printf("\n你想查詢:1.汽車 2.顧客 3.返回 \n");
scanf("%d",&choice);
while(choice!=1&&choice!=2&&choice!=3)
{
printf("\n輸入有誤,重新輸入:");
scanf("%d",&choice);
}
switch(choice)
{
case 1:carSc(); break;
case 2:clientSc(); break;
case 3: ;
default:;
}
}
void carSc()
{
printf("\n\n所有汽車信息:\n");
printf("\nA類汽車還剩%d輛.\nB類汽車還剩%d輛.\nC類汽車還剩%d輛.",
headNode[0].avl,headNode[1].avl,headNode[2].avl);
}
void clientSc()
{
client *ptr=allClien;
printf("\n\n所有顧客信息:\n");
while(ptr!=NULL)
{ printf("\n\n顧客編號:%d",ptr->No);
printf("\n顧客姓名:%s",ptr->Name);
printf("\n駕照類型:%c",ptr->License);
printf("\n租賃車號:%d",ptr->carNo);
printf("\n租賃天數:%d",ptr->Day);
printf("\n延遲天數:%d",ptr->DelayDay);
ptr=ptr->next;
}
}
void addCli(client *cli)
{
if(allClien)
allClien=cli;
else
{
cli->next=allClien->next;
allClien=cli;
}
}
client* delCli(int clientNo)
{
client *ptr,*prePtr;;
ptr=allClien;
while(ptr!=NULL&&ptr->No!=clientNo)
{ prePtr=ptr;
ptr=ptr->next;
}
if(ptr!=NULL)
{
if(ptr==allClien)
{
allClien=NULL;
}
else
{
prePtr->next=ptr->next;
}
}
return ptr;
}
void rent()
{
char name[20],type,Yes_No;
int num,day,No;
car *carPtr;
client *cli;
printf("\n\n輸入執照類型(A/B/C):");
scanf("%c",&type);
while(type!='A'&&type!='B'&&type!='C')
{
printf("輸入有誤,重新輸入:");
scanf("%c",&type);
}
if(type=='A')
num=headNode[0].avl;
else if(type=='B')
num=headNode[1].avl;
else
num=headNode[2].avl;
printf("\n%c類汽車還剩%d輛,是否要租憑(Y/N):",type,num);
scanf("%c",&Yes_No);
while(Yes_No!='Y'&&Yes_No!='N'&&Yes_No!='y'&&Yes_No!='n')
{
printf("Y或N:");
scanf("%c",&Yes_No);
}
/*增加顧客*/
if(Yes_No=='Y'||Yes_No=='y')
{
printf("\n輸入你的名字:");
scanf("%s",name);
printf("\n輸入你的租賃天數:");
scanf("%d",&day);
}
No=rand()%60+200;
carPtr=delCar(type);
cli=(client *)malloc(sizeof(client));
cli->No=No;
strcpy(cli->Name,name);
cli->License=type;
cli->carNo=carPtr->No;
cli->Day=day;
cli->DelayDay=0;
cli->next=NULL;
addCli(cli);
/*移出一輛車*/
printf("\n你的顧客編號是:%d",No);
printf("\n你所租賃的汽車是%c類車,車號是:%d",type,carPtr->No);
printf("\n你的租賃天數是%d天.",day);
}
void giveback()
{
int No;
long int payment;
client *ptr;
printf("\n\n顧客編號:");
scanf("%d",&No);
if((ptr=delCli(No))==NULL)
printf("\n該顧客不存在,無法歸還!");
else
{
switch(ptr->License)
{
case 1:payment=ptr->Day*400+ptr->DelayDay*600;break;
case 2:payment=ptr->Day*300+ptr->DelayDay*500;break;
case 3:payment=ptr->Day*200+ptr->DelayDay*400;break;
default:;
}
printf("\n\n顧客姓名:%s",ptr->Name);
printf("\n駕照類型:%c",ptr->License);
printf("\n租賃車號:%d",ptr->carNo);
printf("\n租賃天數:%d",ptr->Day);
printf("\n延遲天數:%d",ptr->DelayDay);
printf("\n\n所需費用:%ld",payment);
addCar(ptr->License,ptr->carNo);
free(ptr);
}
}
void addCar(char carType,int carNo)
{
car *ptr;
int index=carType-65;
ptr=headNode[index].head;
if(ptr==NULL)
{ptr=(car *)malloc(sizeof(car));
headNode[index].head=ptr;
}
else
{while(ptr->next)
ptr=ptr->next;
ptr->next=(car *)malloc(sizeof(car));
ptr=ptr->next;
}
ptr->No=carNo;
ptr->Type=carType;
ptr->Payment= pay[index];
ptr->fine=fine[index];
ptr->next=NULL;
}
car* delCar(char type)
{
car *rentcar;
switch(type)
{
case 'A':rentcar=headNode[0].head;
headNode[0].head=rentcar->next;
break;
case 'B':rentcar=headNode[1].head;
headNode[1].head=rentcar->next;
break;
case 'C':rentcar=headNode[2].head;
headNode[2].head=rentcar->next;
break;
default:;
}
return rentcar;
}
void Exit()
{
printf("\n歡迎使用.....888888888886666....");
exit(0);
}
B. C語言 電影院售票(坐位)系統
這是我自己做的, 是用C# 實現的,,如果你的其它語言,稍做修改,應該符合你的題目:
選題的根據:1) 本選題的理論、實際意義
2) 綜述國內外有關本選題的研究動態和自己的見解
1) 本選題的理論、實際意義
影院售票系統是計算機技術與影院管理相結合的產物,通過影院售票系統實現了對影院的高效
管理。隨著計算機技術的不斷提高,計算機已經深入到社會生活的各個角落.而採用人工售票的方
法,不僅效率低,易出錯,手續繁瑣,而且耗費大量人力。為了滿足售票人員對售票,訂票,退
票等進行高效的管理,在工作人員的具備一定的計算機操作能力的前提下,特編此影院售票系統
軟體以提高影院的管理效率。
2) 綜述國內外有關本選題的研究動態和自己的見解
面對全球方興未艾的影院觀看熱潮,國內外對影院觀看的視覺需求,以及其規模的優勢,其獨有的互動效果和場內氣氛贏得了越來越多的人心。
國外研究動態
1829年,比利時著名物理學家約瑟夫普拉多發現:當一個物體在人的眼前消失後,該物體的形象 還
會在人的視網膜上滯留一段時間,這一發現,被稱之為「視象暫留原理」。普拉多根據此原理於1832
年發明了「詭盤」。「詭盤」能使被描畫在鋸齒形的硬紙盤上的畫片因運動而活動起來,而且能使視
覺上產生的活動畫面分解為各種不同的形象。「詭盤」的出現,標志著電影的發明進入到了科學實驗
階段。1834年,美國人霍爾納的「活動視盤」試驗成功;1853年,奧地利的馮烏卻梯奧斯將軍在上
述的發明基礎上,運用幻燈,放映了原始的動畫片。
國內研究動態
1979年10月電影事業獲得發展,鄧小平同志代表黨中央肯定了文化大革命前17年的文藝路線基本
是正確的,總結了歷史的經驗舉戚談教訓,糾正了過去提出的「文藝服從政治 、文藝從屬政治」的偏頗提法 ,
重申執行雙百方針。1977年電影生產開始復甦,1980~1984年平均年產量達120部左右,每年觀眾
人次平均在250億左右,中國電影進入一個蓬勃發展的新時期。中國美術片從形式到內容都極富有民族風格和特色。中華人民共和國建立以後,美術片是中國影片在國際上獲獎最多的一個片種。新聞紀錄片已向縱深發展,充分利用豐富的資料,系統地編輯一些重要的文獻片,並對群眾普遍關心的問題與重要事件進行綜合報道、專題報道;還注意表現人物和人物的精神世界,抓住真人真事中豐富的細節,以情動人。
主要內容:
1) 項目規劃
完成一個完整的影院售票系統,分為影院內部管理和網路服務2個系統,影院內部管理子系統主要實現影院售票員對影院的售票功能,網路服務實現網上查詢瀏覽約定電影院功能。這些功能可以分為以下二部個部分:前台管理,,後台管理
前台現場售票:電影名稱,票價,票價打折,售票,座位,列印票,結帳
後台管理模塊: 管理員主要用於電影類型管理:添加電影種類,介紹,票價,放映場次,放映時間,放映大廳,近幾日放映訂劃管理。具體的功能可以分為以下幾個部分:
影院仔旅介紹
預訂電影
2) 系統功能結構圖
研究方法:
廣泛查閱、收集論文資料和研究資源,了解以及參考國內外對影院售票系統的研究正碰成果;研究已存在的影院售票系統,學習他人的設計思想和方法,並在導師的指導下,利用在大學所學的一些軟體開發知識完成該系統。本系統後台資料庫採用目前最新的Microsoft SQL Server 2005,該資料庫系統在安全性、准確性和運行速度方面有絕對的優勢,並且處理數據量大、效率高;前台採用Microsoft 公司的Visual Studio 2005 作為主要的開發工具,其可與 SQL Server 2005資料庫無縫連接。
完成期限和採取的主要措施:
1) 完成期限
階段 階 段 內 容 起止時間
一 准備階段:閱讀搜集相關資料,搭建工作環境,制定設計方案,開題; 10.2.16—10.2.22
二 需求分析、系統設計階段:各模塊功能的設計,資料庫的設計,系統文件夾的設計; 10.2.23—10.2.28
三 網站系統的開發與實現; 10.3.01—10.04.08
四 系統聯調及測試階段:完成各模塊的集成測試,與管理子系統集成,進行聯調和測試,編寫論文。 10.4.10—10.04.30
五 編寫並提交畢業設計論文、設計源文件、源代碼,參加畢業設計答辯。 10.5.01—10.05.20
2) 採取的主要措施
在開發本系統時,系統的界面設計和內核設計使用Visual Studio 2005進行開發,主要措施如下:
使用母版頁構建網站的整體風格
主題的應用
使用存儲過程實現站內模糊查詢
使用哈希表和Session對象實現購物功能
Free TextBox組件的配置使用
主要參考文獻:
[1] 梅曉冬,顏燁青. Visual C#網路編程技術與實踐 [M]. 北京: 清華大學出版社
[2] 劉瑞新 C#網路編程及應用 機械工業出版社
[3] 王平 柴晟 C#程序設計語言任務驅動式教程 北京航空航天大學出版社
[4] 武馬群 SQL Server 2000 資料庫基礎與應用
[5] Christian Nagel. C#高級編程(第6版) [M]. 北京: 清華大學出版社
[6] [美]麥克金,赫特克. SQL Server 2005資料庫伺服器架構設計[M]. 北京: 清華大學出版社
[7] 張躍廷,顧彥玲. ASP.NET 從入門到精通[M]. 北京: 清華大學出版社
[8] 王宏編 C#程序設計案例教程 清華大學出版社
[9] 劉冰 軟體工程實踐教程 機械工程出版社
[10]馬丁. 敏捷軟體開發:原則、模式與實踐(C#版)[M]. 北京: 人民郵電出版社
C. 求c語言,電影院售票管理系統的設計與實現的代碼
#include<stdio.h>
#include<stdlib.h>
structcell
{
char*name;
inttime;
intseat;
intsaled;
}a,b,c,d;
intsel=0;
voidtitle();
voidsaleproc();
intsaleThread(structcell*ce,intdd);
voidtiupiaoproc();
inttiupiaoThread(structcell*ce);
voidcount();
intinit(structcell*ce,char*name,inttime,intseat)
{
ce->name=name;
ce->time=time;
ce->seat=seat;
ce->saled=0;
return1;
}
intsaleThread(structcell*ce,intdd)
{
if((ce->seat-ce->saled)>=dd)
{
ce->saled+=dd;
printf("售票成功!按ESC鍵返回主菜單 ");
fflush(stdin);
intcc=_getche();
return1;
}
else
{
printf("售票失敗---余票不足!按ESC鍵返回主菜單 ");
fflush(stdin);
intcc=_getche();
return0;
}
}
voidsaleproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*廳影片時間余票* ");
printf("** ");
printf("*A%s%d:%d%3d* ",a.name,a.time/60,a.time%60,a.seat-a.saled);
printf("** ");
printf("*B%s%d:%d%3d* ",b.name,b.time/60,b.time%60,b.seat-b.saled);
printf("** ");
printf("*C%s%d:%d%3d* ",c.name,c.time/60,c.time%60,c.seat-c.saled);
printf("** ");
printf("*D%s%d:%d%3d* ",d.name,d.time/60,d.time%60,d.seat-d.saled);
printf("** ");
printf("*********************************** ");
printf("請選擇放映廳(a,b,c,d)和要購的票數(按ESC鍵返回主菜單)(格式:a5): ");
fflush(stdin);
charcc;
intdd;
dd=_getche();
if(dd==27)
{
f=0;
break;
}
else
{
cc=(char)dd;
}
scanf("%d",&dd);
switch(cc)
{
case'a':
saleThread(&a,dd);
f=0;
break;
case'b':
saleThread(&b,dd);
f=0;
break;
case'c':
saleThread(&c,dd);
f=0;
break;
case'd':
saleThread(&d,dd);
f=0;
break;
default:
break;
}
}
title();
}
inttiupiaoThread(structcell*ce)
{
if(ce->saled==0)
{
printf("撞尼瑪鬼了老子一張票都沒賣,哪來的退票??? ");
fflush(stdin);
intcc=_getche();
return0;
}
ce->saled--;
printf("退票成功!按任意鍵返回主菜單 ");
fflush(stdin);
intcc=_getche();
return1;
}
voidtiupiaoproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*退票* ");
printf("** ");
printf("*A%-20s* ",a.name);
printf("** ");
printf("*B%-20s* ",b.name);
printf("** ");
printf("*C%-20s* ",c.name);
printf("** ");
printf("*D%-20s* ",d.name);
printf("** ");
printf("*********************************** ");
printf("請輸入要退的廳(a,b,c,d): ");
charcc;
fflush(stdin);
scanf("%c",&cc);
if(cc=='')
{
f=0;
break;
}
switch(cc)
{
case'a':
tiupiaoThread(&a);
f=0;
break;
case'b':
tiupiaoThread(&b);
f=0;
break;
case'c':
tiupiaoThread(&c);
f=0;
break;
case'd':
tiupiaoThread(&d);
f=0;
break;
default:
break;
}
}
title();
}
voidcountproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*統計* ");
printf("** ");
printf("*A廳:余票%3d上座率%5.2f%%* ",a.seat-a.saled,(((float)a.saled/(float)a.seat)*100));
printf("** ");
printf("*B廳:余票%3d上座率%5.2f%%* ",b.seat-b.saled,(((float)b.saled/(float)b.seat)*100));
printf("** ");
printf("*C廳:余票%3d上座率%5.2f%%* ",c.seat-c.saled,(((float)c.saled/(float)c.seat)*100));
printf("** ");
printf("*D廳:余票%3d上座率%5.2f%%* ",d.seat-d.saled,(((float)d.saled/(float)d.seat)*100));
printf("** ");
printf("*********************************** ");
printf("按ESC鍵返回主菜單! ");
fflush(stdin);
intcc=_getche();
if(cc==27)
{
f=0;
break;
}
}
title();
}
voidtitle()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*歡迎光臨牛B電影院* ");
printf("** ");
printf("*1.售票* ");
printf("** ");
printf("*2.退票* ");
printf("** ");
printf("*3.統計* ");
printf("** ");
printf("*4.退出* ");
printf("** ");
printf("*********************************** ");
printf("請選擇:(1,2,3,4) ");
fflush(stdin);
scanf("%d",&sel);
getchar();
switch(sel)
{
case1:
saleproc();
f=0;
break;
case2:
tiupiaoproc();
f=0;
break;
case3:
countproc();
f=0;
break;
case4:
system("exit");
f=0;
break;
default:
break;
}
}
}
intmain(intargc,char*argv[])
{
init(&a,"鋼鐵俠3",18*60+30,150);
init(&b,"致青春",19*60+30,150);
init(&c,"姜戈",20*60+30,150);
init(&d,"生化危機4",20*60+20,100);
title();
return0;
}
D. 用C語言引導u盤的代碼,就是用U盤重裝系統,要那些代碼
一台裝有系統的電腦里,插入U盤
開始 -> 附件 -> 命令提示行
在命令行提示窗口按以下操作執行,輸入完成要安回車確定
1.輸入diskpart
2.輸入list disk,查看U盤是disk?
3.輸入select disk ?,這里的?就是上步看到的數字
4.輸入clean
5.輸入create primary partition
6.輸入select partition 1
7.輸入active
8.輸入format fs=fat32
9.把VISTA安裝光碟(這里應該是虛擬光碟機載入的鏡像)上的所有文件復制到U盤上,可以輸入x /f/s/e DVDX:\*.* FlashDiskY:\
這里的DVDX是指VISTA安裝光碟的驅動器號,FlashDiskY是上述過程中的U盤的驅動器號
10.輸入exit並關閉命令提示行窗口
11.執行安裝
12.安裝完成後打驅動
E. 大學C語言(c++)課程設計電影院售票管理系統
#include<iostream>
#include<iomanip>
#defineLEN20
#defineROW20
usingnamespacestd;
voidinitseat(chars[LEN][ROW])
{
inti,j;
for(i=0;i<LEN;i++)
{
for(j=0;j<ROW;j++)
{
s[i][j]='';
}
}
}
voidprintmenu()
{
cout<<" 1.查詢座位 "<<"2.預定座位"<<endl;
cout<<" 3.列印電影票 "<<"4.顯示所有位置"<<endl;
cout<<" 0.退出"<<endl;
}
voidprintseat(chars[LEN][ROW])
{
inti,j;
cout<<"";
for(i=0;i<ROW;i++)
cout<<setw(3)<<i+1;
cout<<endl;
for(i=0;i<LEN;i++)
{
cout<<setw(3)<<i+1<<".";
for(j=0;j<ROW;j++)
cout<<setw(3)<<s[i][j];
cout<<endl;
}
}
boolsearchfull(chars[LEN][ROW])
{
intl,r;
cout<<"您要查找的行數為:";
cin>>l;
cout<<"您要查找的列數為:";
cin>>r;
if(s[l-1][r-1]!='')
{
cout<<"您查找的座位已有人!!!"<<endl;
returnfalse;
}
else
{
cout<<"您查找的座位沒有人!!!"<<endl;
returntrue;
}
}
boolprintticket(chars[LEN][ROW],intl,intr)
{
cout<<"電影名稱:"<<"星際穿越"<<endl;
cout<<"座位:"<<l<<"排"<<r<<"列"<<endl;
cout<<"放映時間:"<<"2014年12月20日14:00"<<endl;
returntrue;
}
boolreservation(chars[LEN][ROW])
{
intl,r;
cout<<"您要預定的行數為:";
cin>>l;
cout<<"您要預定的列數為:";
cin>>r;
if(!(l<=LEN&&l>=0&&r<=ROW&&r>=0))
{
cout<<"您的輸入不合法!!!"<<endl<<"預定失敗!!!"<<endl;
returnfalse;
}
boolflag;
if(s[l-1][r-1]=='#')
flag=false;
else
flag=true;
if(flag==false)
{
cout<<"此座位已有人!!!"<<endl;
returnfalse;
}
s[l-1][r-1]='#';
printticket(s,l,r);
returntrue;
}
intmain()
{
charseat[LEN][ROW];
intflag,l,r;
initseat(seat);
printseat(seat);
printmenu();
while(cin>>flag,flag!=0)
{
switch(flag)
{
case1:searchfull(seat);break;
case2:reservation(seat);break;
case3:cout<<"請輸入您要列印的行數:";cin>>l;
cout<<"請輸入您要列印的行數:";cin>>r;
if(!(l<=LEN&&l>=0&&r<=ROW&&r>=0))
{
cout<<"您的輸入不合法!!!"<<endl<<"預定失敗!!!"<<endl;
break;
}
printticket(seat,l,r);
break;
case4:printseat(seat);
default:break;
}
printmenu();
}
return0;
}