文档介绍:仲恺农业技术学院
课程设计
课程设计题目
地铁站售票系统
姓名 院 (系) 专业班级
白崇亮
计算机科学与工程学院 计算机科学与技术 052 班
学号
1 5号
指导教师
李晟
职称
讲师
设计日期
2006 年n");
do{ scanf("%d",&j);
switch(j)
{case 1:
/*调用该站的结构功能模块*/
gongyuanqian(j ); break;
case 2: /*调用该站的结构功能模块*/
nongjiangsuo( j); break;
case 3: /*调用该站的结构功能模块*/
lieshilingyuan(j );break;
case 4: /*调用该站的结构功能模块*/
yangji(j );break;
case 5: /*调用该站的结构功能模块*/
tiyuxilu(j );break;
case 6: /*调用该站的结构功能模块*/
tiyuzhongxin(j );break;
case 7: /*调用该站的结构功能模块*/
guangzhoudongzhan(j );break;
case 8: break;
}}
while(j!=0); /*结束*/
printf(“ 谢谢 \n");
}/*主函数结束*/
void xilang( )
{printf(" 长寿路 \n");
printf(" \n");
printf("Hello!此站是你第一站,长寿路站\n");
printf("按需使用,请选择功能号码\n");
printf("谢谢合作 \n");
}void gongyuanqian(int c)
{int i=0,a=0,sum=4,m[200],total=0,bu=0,change=0,cheque=0,x=1,b=9; sum=(b-x)/3+2;
printf(" 公元前站 \n");
printf(" \n");
printf("每张票应付的金额:%d元\n",sum);printf(“请输入你要购买的数量:\n",c); scanf("%d",&c); total=sum*c;
printf("你应支付的金额:%d\n",total);
printf(" \n");
printf("本机只收取的硬币,五元,十元及二十元的纸币,请按键输入金额\n"); printf(" \n");
printf("硬币一元请按1,五元请按5,十元请按10,二十元请按20,然后按2结束:\n"); for(i=0;i<200;i++)
{scanf("%d",&m[i]); if(!(m[i]==1||m[i]==5||m[i]==0||m[i]==20||m[i]==2)) {printf("对不起:不能接受这类型金额,请重新输入.\n");
continue;/*若条件不符合就跳出循环*/
}if(m[i]=2)break;/* 退出语句*/ }for(a=0;a<200;a++)
{if(m[a]==1)/*为输入的金额*/
{cheque=cheque+1;/* 应付的金额 */
continue;
}else if(m[a]==5)/* 为输入的金额 */
{cheque=cheque+5;/* 应付的金额 */
continue;
}else if(m[a]==0)/* 为输入的金额 */
{cheque=cheque+10;/* 应付的金额 */
continue;
}else if(m[a]==20)/* 为输入的金额 */
{cheque=cheque+20;/* 应付的金额 */
continue;
}else if(m[a]==2)break;/* 退出界面*/
}if(chequevtotal)/*判断是否已经付足了钱*/
{do /*应用了循环*/
{printf(”对不起!你金额不足!请补回:%d\n",bu=total-cheque);/*算出应退补价钱*/ scanf("%d",&bu);
cheque+=bu;
}while(chequevtotal);/*若条件满足则再返回循环体*/ change=cheque-total;/*计算出跳出循环体之后的应找的价钱*/
}else
change=cheque-total;
if(change==O)/*判断如果不需要找钱就输出下面语句*/ printf("loading...请取票,欢迎再为服务\n");
else /*判断如果需要找钱就计算出该找的钱数*/
printf("loading 找回余额:%d\n",change);