黑马程序员技术交流社区
标题:
一个黑马游戏厅的小练习,多多指正
[打印本页]
作者:
耿帅东
时间:
2015-12-6 14:54
标题:
一个黑马游戏厅的小练习,多多指正
本帖最后由 耿帅东 于 2015-12-6 14:56 编辑
import java.util.Scanner;
class Test_ZongHe {
public static void main(String[] args) {Scanner sc = new Scanner(System.in);
a:while (true) { //使用一个死循环,无限重复输出提示指令
printNotice();
int x = sc.nextInt(); //定义一个变量接受键盘录入的数
switch (x) {
case 1:
System.out.println("请输入第一个整数"); //提示输入2个整数
int m = sc.nextInt();
System.out.println("请输入第二个整数");
int n = sc.nextInt();
changeNum(m,n); //调用方法changeNum,倒序输出
break;
case 2:
System.out.println("请输入第一个整数");
int i = sc.nextInt();
System.out.println("请输入第二个整数");
int j = sc.nextInt();
System.out.println("两个数的偶数和为 :" + getSumO(i,j) + ";"); //调用方法getSumO,打印出偶数和
break;
case 3:
System.out.println("请输入打印正三角形的边长");
int l = sc.nextInt();
printS(l); //调用方法,打印指定边长的正三角形
break;
case 4:
print99(); //调用方法打印99乘法表
break;
case 5 :
break a;
default :
System.out.println("输入错误");
break;
}
while (true) { //定义一个循环判断是否继续游戏
System.out.println("--------------------------------------------------------------------");
System.out.println("是否继续游戏,是请输入1,否请输入2");
int ask = sc.nextInt();
if (ask == 1) {
break;
}else if (ask == 2) {
break a;
}else {
System.out.println("无法识别,请重新选择");
}
}
}
}
//定一个方法,打印进入提示语
public static void printNotice() {
System.out.println("--------------------------------------------------------------------");
System.out.println("请输入您的选择:");
System.out.println("1 倒序输出");
System.out.println("2 计算两个数之间的偶数和");
System.out.println("3 打印指定边长的正三角形");
System.out.println("4 给你个惊喜");
System.out.println("5 退出游戏");
System.out.println("--------------------------------------------------------------------");
}
//定义方法:选项1 倒序输出
public static void changeNum(int x,int y) {
x = x ^ y; //使用异或运算交换x,y的值
y = x ^ y;
x = x ^ y;
System.out.println("--------------------------------------------------------------------");
System.out.print(x);
System.out.print("→");
System.out.println(y);
}
//定义方法:选项2 计算2个数之间的偶数和
public static int getSumO(int x,int y) {
int sum = 0;
if (x <= y) { //定义一个条件语句比较输入的2个数大小,然后从小到大的区间进行循环遍历求偶数和
for (int a = x; x <= y ;x++ ) {
if (a % 2 == 0) {
sum += a;
}
}
}else {
for (int a = y; y <= x ;y++ ) {
if ( a % 2 == 0) {
sum += a;
}
}
}
return sum;
}
//定义方法:选项3 打印指定边长的正三角形
public static void printS(int m) {
for (int x = 1; x <= m ; x++ ) { //用一个for循环嵌套2个for循环实现
for (int y = x; y <= m ;y++ ) {
System.out.print(" ");
}
for (int z = 1; z <= x ;z++ ) {
System.out.print("* ");
}
System.out.println();
}
}
//定义方法:选项4 给你个惊喜 打印99乘法表
public static void print99() { //用forfor循环嵌套打印99乘法表
for (int x = 1; x <= 9 ;x++ ) {
for (int y = 1; y <= x ;y++ ) {
System.out.print(y + "*" + x + "=" + y * x + "\t");
}System.out.println();
}
}
}
复制代码
作者:
耿帅东
时间:
2015-12-6 14:58
有好的思路欢迎交流
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2