一:随机生成
代码演示部分:
//随机生成一个1~100之间的数据,提示用户猜测,猜大提示过大,猜小提示国小,直接猜中结束游戏
Scanner sc = new Scanner(System.in);
Random r = new Random();
int lucknuber = r.nextInt(100) + 1;
System.out.println("请输入一个数字:");
//随机生成一个数字,作为答案
//循环,提示用户输入数字,输出的数字与生成的数字对比,若大于:输出大于;若小于输出小于;若等于输出答对
while (true) {
int guessnuber = sc.nextInt();
int answer = sc.nextInt();
if (guessnuber > lucknuber) {
System.out.println("输入数字大于答案,请继续猜测");
} else if (guessnuber < lucknuber) {
System.out.println("猜测数字小于答案,请继续猜测");
} else if (guessnuber == lucknuber) {
System.out.println("猜对,恭喜");
break;
}
这是在控制语句学完之后的一个含Random类的案例。
改进–失败:在做完之后,想加一个偷偷告诉答案的一部分。结果没有成功。试错了一会,就把这个功能暂时放下了
第二次练习:
Scanner sc = new Scanner(System.in);
Random ra =new Random();
System.out.println("请你猜测的数字");
int guessnumber = sc.nextInt();
int answer = ra.nextInt(100)-1;
while (true){
if (guessnumber==answer){
break;
}else if (guessnumber>answer){
System.out.println("过大");
}else {
System.out.println("过小");
}
}
在隔天复习时,对一些语句作了一点的优化,但是也无意中弄出来了一个死循环。
在检擦之后发现,在死循环中,恰巧是int guessnumber = sc.nextInt();语句,让死循环变为“不朽”;
二,打印矩阵
代码演示部分
for(int i =1;i<=4;i++){
for (int j=1;j<=5;j++){
System.out.print("*");
}
System.out.println("");
System.out.println("-----------");
}
三,break和continue的应用
代码演示部分
// 五天中,每天重复说三句同样的话;
for (int i= 0;i<10;i++){
System.out.println(i);
if (i==3){
continue;
// break;
}
for (int j=0;j<3;j++){
System.out.println("我爱你");
}
第2种循环
int i =0 ;
while (i<5){
System.out.println(i);
int j =0;
while (j<3){
System.out.println("我喜欢你");
j++;
}
i++;
}
四:含键盘输录功能类 Scanner
代码演示部分
int okPassword = 520;
Scanner sc = new Scanner(System.in);
while(true){
System.out.println("请您输入正确的密码:");
int passwrod = sc.nextInt();
if ( passwrod==okPassword ){
System.out.println("登录成功");
break;
}else {
System.out.println("密码有误");
}
五:1~20的奇数和以及1到 10之和
代码演示部分
int sum =0;
for (int i =0;i<=10;i++){
sum+=i;
}
System.out.println(sum);
System.out.println("...................");
int sum1= 0;
for (int i =1 ;i<=20;i++){
if (i % 2 ==1){
sum1 +=i;
}
}
System.out.println(sum1);
六:水仙花数
代码演示部分
int conunt =0;
for(int i=100;i<=999;i++){
int sum_ge = i%10;
int sum_si = (int)(i/10)%10;
int sum_bai=(int)i/100;
if (sum_bai*sum_bai*sum_bai + sum_si*sum_si*sum_si + sum_ge*sum_ge*sum_ge ==i){
System.out.print(i+"\t");
conunt +=1;
}
}
System.out.println("\n"+"水仙花个数"+conunt);
System.out.println("...................");
七:纸张折叠高度
代码演示部分
double height1 =0.1;
double height2 =8848860;
int count1 = 0;
while (height1<=height2){
height1 *=2;
count1 +=1;
}
System.out.println(count1);
System.out.println(height1);
八:数组案例
代码演示部分
// 猜中提示“运气不错,猜中了”并输出第一次猜中的位置。同时告知其它五个数
//分析:随机五个数---使用动态数组;死循环--进行不断猜测
Random ra = new Random();
Scanner sc = new Scanner(System.in);
int [] array = new int [5];
for (int i= 0;i<=4;i++){
int j = ra.nextInt(20)+1;
array [i] = j;
}
while (true){
System.out.println("请输入你猜的数字");
int guess = sc.nextInt();
if (guess == array[0]){
System.out.println("恭喜答对,其它的答案是:");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]+"");
}
break;
} else if (guess == array[1]){
System.out.println("恭喜答对,其它的答案是:");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]+"");
}
break;
}else if (guess == array[2]){
System.out.println("恭喜答对,其它的答案是:");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]+"");
}
break;
}else if (guess == array[3]){
System.out.println("恭喜答对,其它的答案是:");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]+"");
}
break;
} else if (guess == array[4]){
System.out.println("恭喜答对,其它的答案是:");
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]+"");
}
break;
}else {
System.out.println("抱歉。不对噢");
break;
}
}