Java课程设计
(阶段一文档)
二〇二〇年六月二十四
目 录
1 选题 1
3 系统需求分析 2
3.1 系统可行性分析 2
3.2 系统需求分析 2
3.3 项目进度安排 2
4 系统设计 4
4.1 系统设计 4
4.2 数据库设计(有则写-无则删除,如果是文件直接写文件) 4
5 系统实现 6
5.1 管理员登录界面实现 6
5.2 管理用户信息界面实现 6
6 系统测试 8
7 结论和心得 9
选题一 |
算术运算测试 |
题目要求 |
|
实现十道100以内加减法数学题,能根据题目计算出答案,与输入答案对比,判断做题是否正确,最后计算分数。添加排行榜功能存放到文件或数据库中。
|
|
使用Java知识 |
|
1. 运用了for循环语句 2. 运用了if条件判断语句 3. 运用java的Scanner键盘录入方法
|
|
选题二 |
猜数游戏 |
题目要求 |
|
计算机产生随机数,猜中即胜,猜不中,提示是大了还是小了,继续猜,直到猜到,给出所用时间和评语。保留用户成绩,做出成绩排行榜,排行榜存放到文件或数据库中。
|
|
使用Java知识 |
|
|
一.算术运算测试
1.技术可行性
算术运算测试的进行需要用Eclipse软件,掌握java语言知识,运用到循环等算法知识,所以在技术上是可行的。
程序运行之后,用户只需要输入答案,便可以完成此次测试,所以在操作上是可行的。
二:猜数游戏
1.技术可行性
算术运算测试的进行需要用Eclipse软件,掌握java语言知识,运用到循环等算法知识,所以在技术上是可行的。
2.操作可行性
程序运行之后,用户只需要输入答案,直至答案正确便可以完成测试,所以在操作上是可行的。
一.算术运算测试:系统随机产生两个100以内的整数,加减法各10道题目,用户进行计算,回答正确的一分,回答错误不扣分,如果用户没有回答正确,则给出正确答案,直至用户答完所有题目,最后统计用户所得分数。
二.猜数游戏:系统运行后,随机给出一个1000以内的整数,用户输入猜想的数字,如果猜想数字大,则系统提示所猜数大,请重新输入,如果所猜想数小,则系统提示所猜数小,请重新输入,直至用户猜想正确,游戏结束。满分100分,猜错一次扣5分,系统根据所得分数给出相应评语。
阶段一进度安排如表3-1所示。
表3-1 进度安排表
阶段 |
持续时间 |
阶段描述 |
输出 |
构思阶段 |
1小时 |
需求分析 |
需求说明,功能模块图 |
设计阶段 |
1小时 |
系统设计 |
设计说明-可以画流程图;数据库设计 |
实现阶段 |
5小时 |
编写代码 |
项目工程源代码 |
1小时 |
系统测试 |
进行黑盒测试(功能测试)-测试说明 |
|
运行阶段 |
1小时 |
部署、运行 |
系统使用说明、运维报告、录制视频 |
根据系统的实际功能需求分析,对系统功能部分进行了设计。
一.算术运算测试
二.猜数游戏
1.系统随机给出一个1000以内的整数;
2.用户进行猜想,直至猜想正确,游戏结束;
3.满分100分,每猜想一次,扣5分;
4.最后统计用户所得分数和猜想时间。
4.1代码实现
一.算术运算测试
import java.awt.Toolkit;
import java.util.Scanner;
public class Jisuanti {
public static void main(String[] args) {
int i=0;
int count=0;
int number1=0,number2=0;
for(;;) {
number1=(int) (Math.random()*100);
number2=(int) (Math.random()*100);
//加法部分
System.out.println(" "+number1+"+"+number2+"?");
Scanner scan=new Scanner(System.in);
int answer=scan.nextInt();
if(answer==number1+number2) {
count++;
System.out.println("恭喜你!回答正确");
Toolkit.getDefaultToolkit().beep();
//System.out.println(‘\007‘);
}else {
System.out.println("很遗憾,回答错误");
System.out.println(number1+"+"+number2+" 的正确答案是 "+(number1+number2));
}
//减法部分
if(number1<number2) {
int temp;
temp=number1;
number1=number2;
number2=temp;
}
System.out.println(" "+number1+"-"+number2+"?");
int answer2=scan.nextInt();
if(answer2==number1-number2) {
count++;
System.out.println("恭喜你!回答正确");
for(int time=0;time<6;time++)
Toolkit.getDefaultToolkit().beep();
}else {
System.out.println("很遗憾,回答错误");
System.out.println(number1+"-"+number2+" 的正确答案是 "+(number1-number2));
}
//判断加减法完成次数
i++;
if(i==5) {
break;
}
}
System.out.println("您所得分数是"+count+"分");
}
}
二.猜数游戏
import java.util.Random;
import java.util.Scanner;
public class CaishuGame {
public static void main(String[] args){
//统计次数
int count=0;
//总共次数
int total;
long a=System.currentTimeMillis()/1000;
Random i = new Random();
int num = i.nextInt(1000);
while(true) {
System.out.println("请输入您所猜的数(该数介于(0,1000)):");
Scanner j = new Scanner(System.in);
int n = j.nextInt();
if (n == num) {
System.out.println("恭喜您猜对了!");
break;
}else if(n > num){
System.out.println("猜大了,请您重新输入");
}else if(n < num){
System.out.println("猜小了,请您重新输入");
}
count++;
}
long b=System.currentTimeMillis()/1000;
//猜对执行break跳出循环,没有统计到最后一次,故总次数为统计数+1
total = count + 1;
if(total<5) {
System.out.println("您真是天神下凡!!");
}else if(total<9) {
System.out.println("马马虎虎让你给过了");
}else
System.out.println("菜的抠脚!!");
System.out.println("您得分为"+(100-total*5)+"");
System.out.println("您所用的时间为:"+(b-a));
4.2运行界面
一.算术运算测试
二.猜数游戏
}
}
本次的实训,通过自己的构思和技巧,一步步地去实现,才发现其实好多事情并没有看上去那么难,只要我们自己动手,不断摸索,学习好java 语言知识,掌握算法,经过一次又一次的实验,熟能生巧,方能体会到java的魅力。此后,一定要加强java的学习,不断积累,不断实践,才能让我们在java的道路上越走越远。
原文:https://www.cnblogs.com/lzhandzj/p/13205499.html