需求说明:
(1)实现控制台的猜数字游戏。游戏运行时产生一个1~100之间的随机数字
(2)要求用户从控制台输入数字,若输入的数字比随机数小,则输出“太小了,再大一点!”;若输入的数字比随机数大,则输出“太大了,再小一点!”,若输入的数字与随机数相同,则输出“恭喜你猜对了!”。游戏过程中用户需要多次输入所猜数字,直到猜中为止。
实现思路:
(1)声明变量rdmNum,并赋值为1~100之间的随机数字,产生随机数的代码如下:
Random rdm = new Random();
int rdmNum = rdm.next(100)+1;
(2)声明变量guess,存储用户输入的数字。
(3)由于猜数字游戏需要进行多次,直到猜中为止,可以使用循环实现。
循环条件:输入的数字不等于随机数
循环操作:接收用户输入的数字、比较输入数字和随机数的关系,并输出对应信息
实现代码:
import java.util.Scanner; public class kkk { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num; //用户输入的数字 int temp; //储存分离出来的数字 int sum = 0; //储存各位数字之和 System.out.println("请输入一个数字(不限定位数)"); num = sc.nextInt(); do { temp = num % 10; //分离当前位置上的数字 sum += temp; //累加各位数字 num = num / 10; }while(num > 0); System.out.printf("各位数字之和:%d",sum); } }