java小项目——抽奖系统
因为有几天没学新的东西了,所以我就把我学校的大作业拿了出来,就当是给有帮助的人一个参考吧!(虽然网上这些也挺多的,但是还是打算把它写出来了),有需要的抓紧收藏起来哦!!!
模拟注册登录幸运抽奖全过程
2.登陆
3.抽奖
2.选择菜单编号,输出菜单信息
3.如果编号选择错误,输出“您的输入有误!”
2.如果用户选择继续,则可以继续选择菜单,否则程序结束,退出系统
需求说明
2.注册成功,显示注册信息并修改注册标识为true
2.如果用户名和密码输入错误,提示用户继续输入,最多有3次输入机会
2.输入会员卡号,系统生成5个4位随机数作为幸运数字
3.如果会员卡号是其中之一,则成为本日幸运会员;否则不是幸运会员
说明:
在阶段5 抽奖的时候如果没有先进行登陆便不能进行抽奖
源代码:
* 幸运抽奖
* @author xxmeng
*/
public class LuckyTwo {
public static void main(String [] args) {
String input;
int temp=1,countx=0,county=0; //计数器
//注册的用户名,注册的密码,确认密码,登陆密码,会员号,幸运数
String username1=null,userpwd1=null,reuserpwd,username2=null,userpwd2,ID=null;
//数组的下标不可以超过10个,也就是用户名注册的数目不可以超过10个
String[][] userlist=new String[10][3]; //存储用户名,密码,会员号
Scanner inputScanner = new Scanner(System.in); //从键盘上进行输入
while(temp==1) { //循环系统
int temp1=1,flag=0; //计数器
System.out.println("******************欢迎进入xxmeng系统*******************");
System.out.println(" 1.注册" ) ;
System.out.println(" 2.登录" ) ;
System.out.println(" 3.抽奖" ) ;
System.out.println("***********************************************************") ;
System.out.println("请选择菜单号") ;
input=inputScanner.next();
if(input.equals("1") || input.equals("2") || input.equals("3")) {
switch(input) {
case "1": //注册
int flag1=1;
System.out.println("xxmeng系统>注册");
System.out.println("请填写个人注册信息");
do {//验证用户是否存在
System.out.print("用户名: ");
username1 = inputScanner.next();
int i=0;
for(i=0;i<10;i++) {
if(username1.equals(userlist[i][0])) {
System.out.println("用户已经存在");
i=0;
break;
}
}
if(i!=0) {
flag1=0;
}
}while(flag1==1);
while(true) {
System.out.print("密码 :");
userpwd1=inputScanner.next();
System.out.print("请确认密码 :");
reuserpwd = inputScanner.next();
//如果输入的密码和当初设定的密码相同
if(userpwd1.equals(reuserpwd)) {
System.out.println(" 注册成功, 请记住你的会员卡号 ");
System.out.println(" 用户名 " + '\t' + " 密码 " + '\t' + " 会员卡号 ");
//进行四次循环每次随机抽取一次幸运号,一个抽取四次 且抽奖的大小在1~9之间
for(int i=0;i<4;i++) {
int a = (int )(1 + Math.random() *(9));
ID+=String.valueOf(a);
}
/*
* 存储用户的信息
*/
userlist[countx][county]=username1;//存储用户名
System.out.print((userlist[countx][county]) + '\t');
userlist[countx][++county]=userpwd1;//存储密码
System.out.print((userlist[countx][county]) + '\t');
userlist[countx][++county]=ID.substring(4); //存储会员号
System.out.print((userlist[countx][county]));
ID=null;
System.out.println();
county=0;
countx++;
System.out.println("是否继续(y/n)");
char anserString = inputScanner.next().charAt(0);
//如果不继续输入了
if(anserString =='n') {
temp=0;
break;
}else {
break;
}
}else {
System.out.println("两次密码不一样,请重新输入密码 ");//回头再次修改
continue;
}
}
//否则退出
break;
/*
*2. 登录
*/
case "2" :
System.out.println(" xxmeng系统>登录 ");
System.out.println(" 请输入用户名 : ");
username2 = inputScanner.next();
for(int i=0;i<10;i++) {
flag++;
//判断是否存在此用户
if(username2.equals(userlist[i][0])) {
while(temp1<4) {
System.out.println("请输入密码 : ");
userpwd2=inputScanner.next();
//判断登录密码是否正确
if(userpwd2.equals(userlist[i][1])) {
System.out.println("欢迎您 " + userlist[i][0]);
ID=userlist[i][2];
temp1=4;
}else {
System.out.println("密码错误"); //超过三次直接退出系统
temp1++;
if(temp1==4) {
temp=0;
i=11;
}
continue;
}
}
}
}
if(temp1==4) {
break;
}
if(flag==4) {
System.out.println("不存在此用户");
}
System.out.print("是否继续(y/n)");
char anserString = inputScanner.next().charAt(0);
if(anserString =='y') {
continue;
}
if(anserString =='n') {
temp=0;
}
break;
/*
* *
* 抽奖
*/
case "3" :
if(ID==null) {
System.out.println("请先登录 ");
continue;
}
System.out.println("xxmeng系统>抽奖");
System.out.println("您的卡号为 : " + ID );
System.out.print("本日幸运数字为 : " );
String lucknums[] = new String[5];
String lucknumber = null;
for(int i=0;i<lucknums.length;i++) {
for(int j=0;j<4;j++) { //随机生成4个随机数字
int a=(int )(1 + Math.random() *(9));
lucknumber +=String.valueOf(a); //输入的那个数字把它转化成数字字符串
}
lucknums[i] = lucknumber.substring(4);
lucknumber=null;
System.out.println(lucknums[i] + '\t' );
}
System.out.println();
for(int i=0;i<lucknums.length;i++) {
if(lucknums[i].equals(ID)) {
System.out.println(" 恭喜,您是本日的幸运会员 ");
}
}
System.out.println(" 抱歉!您不是本日的幸运会员 ");
System.out.println("是否继续(y/n)");
char anserString1 =inputScanner.next().charAt(0);
if(anserString1 == 'n') {
temp=0;
}
break;
default:
System.out.println(" 对不起!您的输入有误 ");
continue;
}
}else {
System.out.println(" 请输入正确的序号 ");
}}
inputScanner.close();
System.out.println(" 退出系统,谢谢使用!");
}
}
```
******************欢迎进入奖客富翁系统*******************
1.注册
2.登录
3.抽奖
***********************************************************
请选择菜单号
1
奖客富翁系统>注册
请填写个人注册信息
用户名: xxmeng
密码 :123
请确认密码 :123
注册成功, 请记住你的会员卡号
用户名 密码 会员卡号
xxmeng 123 8944
是否继续(y/n)
y
******************欢迎进入奖客富翁系统*******************
1.注册
2.登录
3.抽奖
***********************************************************
请选择菜单号
2
奖客富翁系统>登录
请输入用户名 :
xxmeng
请输入密码 :
123
欢迎您 xxmeng
******************欢迎进入奖客富翁系统*******************
1.注册
2.登录
3.抽奖
***********************************************************
请选择菜单号
3
奖客富翁系统>抽奖
您的卡号为 : 8944
本日幸运数字为 : 7845
6719
4573
4466
7239
是否继续(y/n)
n
退出系统,谢谢使用!
java小项目——抽奖系统的更多相关文章
- Java学习笔记三十:Java小项目之租车系统
Java小项目之租车系统 一:项目背景介绍: 根据所学知识,编写一个控制台版的“呱呱租车系统” 功能: 1.展示所有可租车辆: 2.选择车型.租车量: 3.展示租车清单,包含:总金额.总载货量以及其车 ...
- Java小项目--坦克大战(version1.0)
Java小项目--坦克大战<TankWar1.0> 这个小项目主要是练习j2se的基础内容和面向对象的思想.项目实现了基本的简单功能,我方一辆坦克,用上下左右键控制移动方向,按F键为发射炮 ...
- Java小项目之:教你做个聊天系统!
Java小项目之:聊天系统 今天给大家带来的java练手小项目是一个简单的聊天室,界面简单,操作不难. 分为注册系统,登录系统和聊天系统三部分,很适合java小白练手. 完整的源码和素材请关注并私信我 ...
- Java小项目之:五子棋,你下棋下得过电脑吗?
Java小项目之:五子棋,你下棋下得过电脑吗? Java五子棋功能要求: 1.创建窗口和设计一个棋盘界面 2.实现鼠标点击,棋子出现,黑白棋轮流下 3.能够判断五子相连输赢 4.添加重新开始,悔棋,退 ...
- java小项目之:植物大战僵尸,这个僵尸有点冷!内附素材源码
Java小项目之:植物大战僵尸! <植物大战僵尸>是由PopCap Games开发的一款益智策略类单机游戏,于2009年5月5日发售,这款游戏可谓是无人不知无人不晓. 在我身边,上到40岁 ...
- java小项目之:抽奖系统!java初学者必备(内附源码)
[Java]Java摇奖源码,Java抽奖源码,Java随机抽奖源码 任务描述 本次任务要求为某商场开发一套幸运抽奖系统,客户必须首先注册成为该商场会员,会员登录成功后,就可以参加抽奖活动了.注册 用 ...
- java小项目之:扫雷,这游戏没有你想的那么简单!
扫雷 我之前分享的小项目和小游戏,电影购票.坦克大战.捕鱼达人.贪吃蛇等,虽然已经是耳熟能详人尽皆知的项目和游戏,但是保不齐真的有人没接触过. 今天分享的这个项目,我不相信没人接触过(仅限80后-00 ...
- Java小项目迷你图书管理系统
package 迷你图书管理系统; import java.util.Scanner; public class BookMgr { public static void main(String[] ...
- java小项目之:象棋,羡慕你们有对象的!
象棋,是我国传统棋类益智游戏,在中国有着悠久的历史,属于二人对抗性游戏的一种,由于用具简单,趣味性强,成为流行极为广泛的棋艺活动.中国象棋是中国棋文化也是中华民族的文化瑰宝. 象棋还有很多口诀,这是最 ...
随机推荐
- linux连个文件都删除不了,什么鬼!
前言 最近不是redis 6.0 出了吗,官网介绍最新稳定版本是 6.0.3 .于是,我就准备在自己的破小服务器上安装一下.于是,出现了后续的糟心事 (linux 下的文件正常删除不了). 下载了最新 ...
- LTE常用标识和参数
1 基本标识 1 .1 IMSI 1.2 IMEI 1.3 MSISDN 1.4 TMSI 1.5 MSRN 2 区域类标识 2.1 GCI 其中 LA是GSM(2g)中的位置区,对应4G中的跟踪区T ...
- Life In Changsha College - SQA计划和系统测试规程
一. SQA计划 (1) 对软件进行测试,保证软件不出问题: (2) 项目需要符合IEEE.ISO等软件工程标准 (3) 软件拥有基本的流程图.类图.数据流图等 (4) ...
- [工具推荐]002.SoftOrbits Sketch Drawer使用教程
SoftOrbits Sketch Drawer是一款简单易用的照片素描化软件,内置多种预设方案以及丰富的自定义细节. 只需要一次轻轻的鼠标点击,就可以帮助你迅速的将家人的照片转换为黑白或者彩色的素描 ...
- cocos2dx 入门 环境配置
本人立志走游戏开发这条路,很早之前就准备学习cocos2dx,今天终于忙里偷闲入了一下门,把环境配置好了,创建了自己的第一个cocos项目! 一.环境配置 1.下载cocos https://coco ...
- SpringCloud Eureka Client和Server侧配置及Eureka高可用配置
一.Eureka注册中心和客户端配置Demo. 1.Server端 a.使用Idea创建Spring项目,如下所示: b.相关配置 application.yaml配置文件如下: # eureka本身 ...
- ActiveMQ 笔记(七)ActiveMQ的多节点集群
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一.Activemq 的集群思想 1.使用Activemq集群的原因 面试题: 引入消息中间件后如何保证 ...
- Java实现蓝桥杯VIP算法训练 数组逆序排列
试题 算法训练 数组逆序排列 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 编写一个程序,读入一组整数(不超过20个),并把它们保存在一个整型数组中.当用户输入0时,表示输入结束. ...
- java实现第四届蓝桥杯阶乘位数
阶乘位数 题目描述 如图p1.jpg所示,3 x 3 的格子中填写了一些整数. 我们沿着图中的红色线剪开,得到两个部分,每个部分的数字和都是60. 本题的要求就是请你编程判定:对给定的m x n 的格 ...
- 「持续集成实践系列 」Jenkins 2.x 构建CI自动化流水线常见技巧
在上一篇文章中,我们介绍了Jenkins 2.x实现流水线的两种语法,以及在实际工作中该如何选择脚本式语法或声明式语法.原文可查阅:「持续集成实践系列」Jenkins 2.x 搭建CI需要掌握的硬核要 ...