头一次引用循环~我这样用对吗?

凉岑玉 2010-04-04 04:03:02
我是第一次引用【do...while】循环,代码如下~希望大家指出我的错误或者漏洞~
import java.util.Random;
import java.util.Scanner;

public class shaizi {

/**
* @param args
*
*/
public static void main(String[] args) {
System.out.println("请输入任意字符并回车开始游戏");
Scanner scan = new Scanner(System.in);
String a;
Random w = new Random();
int computer = w.nextInt(6) + 1;
int player = w.nextInt(6) + 1;
int number = 0;
int c=0;
int p=0;
a = scan.next();


do {
System.out.println("电脑掷出了" + player + "点");
a = scan.next();
System.out.println("玩家掷出了 " + computer + "点");
number++;
if (player > computer) {
System.out.println("对不起,您输了,快给钱!!");
c++;

} else if (player == computer) {
System.out.println("点数相等,双方各拿出20元给程序设计者");
} else {
System.out.println("恭喜啊~好不容易赢一次!!来,给你20块钱!");
p++;
}
System.out.println("是否查看结果?(y/n)");
a = scan.next();
if (a.equals("y")) //equals:等于。
{
System.out.println("总共玩了" + number + ",电脑赢了" + c
+ ",您赢了" + p + ".");
}
System.out.println("是否继续?(y/n)");
a = scan.next();
} while (a.equals("y"));
System.out.println("是否退出?(y/n)");
a = scan.next();
if (a.equals("y")) {
System.out.println("您已成功退出");
} else {
System.out.println("是否继续(y/n)");
a = scan.next();
}
while (scan.equals("y"));


}
}
...全文
99 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
凉岑玉 2010-04-04
  • 打赏
  • 举报
回复
多谢!!!
justlearn 2010-04-04
  • 打赏
  • 举报
回复
int computer;
int player;
int number = 0;
int c=0;
int p=0;
a = scan.next();


do {
player = w.nextInt(6) + 1; System.out.println("电脑掷出了" + player + "点");
a = scan.next();
computer = w.nextInt(6) + 1; System.out.println("玩家掷出了 " + computer + "点");
number++;
if (player > computer) {
System.out.println("对不起,您输了,快给钱!!");
c++;

}
justlearn 2010-04-04
  • 打赏
  • 举报
回复
随机数在程序开始就设定了,而循环中没有改变随机数。这样每次运行都一个结果。
把随机数的赋值放到循环里吧

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧