GuessNumber程序具体的题目(附)适合初学者学习练习,这是我学习时老师用的一个项目

程序运行时自动产生一个1-100之间的随机数,让游戏者来猜这个数。当从键盘接收到游戏者输入的数据后,程序给出的相应的提示信息,游戏者根据提示不断从键盘输入数据,直到猜中。另外程序还提供了“重新开始”和“退出”的功能,可供游戏者重复进行游戏。
1. 建立Java程序,使用键盘输入流提供用户输入所猜数据;
2. 使用Math.random()产生一个100以内的随机数;
3. 使用一个循环从键盘输入数据,并和产生的随机数判断是否大小关系,给出相应提示,循环结束条件为猜中产生的随机数;
4. 判断是否继续游戏;要求用户输入信息;
5. 添加外层循环判断是否继续游戏;
6. 在项目报告中说明键盘输入的基本语句。
7. 在项目报告中写出for语句的执行过成。
8. 在项目报告中分析while与do-while之间的区别和联系
相关方法如下:
 //功能:从键盘读入一行字符;输出:返回用户输入的字符串
  //程序中直接调用方法即可.
     static String readStr(){
      String str = "";
      try{
        BufferedReader br = new BufferedReader(//创建缓冲输入流对象,供键盘输入
               new InputStreamReader(System.in));
        str = br.readLine();
      }catch (IOException e){}
 
      return str;

     }
产生0-1之间随机数的方法调用:Math.random();1-100间随机数如何计算?
字符串的比较方法:equalsIgnoreCase(),使用示例:
 String str = readStr(); //从键盘读入一行字符
 if(str.equalsIgnoreCase("y"))  //将str与"y"比较(忽略大小写),相等则返回true
   System.out.println("str is"+str);
将输入的数字字符串转换为整数的使用示例:
          String strNum = readStr();
         int n  = Integer.parseInt(strNum); //转换为整型数

重难点提示:
 1 程序一共有两层循环,外层决定是否继续游戏,内层负责猜数.注意循环退出条件是猜中才退出,编程前,最好写出猜数的处理流程!
 一次猜数的过程:
 1 屏幕提示:""请输入数值(1-100):"
 2 生成1-100间的随机整数r
 3 从键盘读入字符串
 4 将字符串转化为整数n
 5 猜测次数count+1;
 6 如果r>n ,提示"偏大了,请继续:",回到3;若r<n,提示"偏小了,请继续:",回到3;若r=n,提示:"恭喜!"+ count + "次猜对!,退出循环,方法结束.
 方法实现原型:
     void guessNum(){
   }
 

 

附:
测试用例的基本概念,一般程序编写后,必然要运行,看实际运行结果与预先的设想是否一致,若一致,则认为程序正确,否则,就要检查调试修改程序,再运行测试.
一个测试用例基本的由三部分组成:
 输入值    期望输出值    实际输出值

例如要测试readStr()方法,
输入abc,期望方法返回结果为abc,实际结果则是方法调用后的实际返回值,显然若方法有问题,则实际结果不一定为abc;同时输入abc,实际运行返回abc也不能说明程序就一定正确,需要输入更多的值,进行验证,如:
输入值    期望输出值    实际输出值
abc       abc
直接回车  ""
一个空格  " "
“方”    "方"
可能有无穷的输入,那如何以最少的输入,达到较全面测试程序的目的,是测试中需要解决的关键问题之一,以后会介绍一些基本的方法给
大家。

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值