A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

//return name.equals("admin") && pwd.equals("admin")比较字符型数据大小采用 a.equals("b")
import java.util.Scanner;//掉包
class Work2 //小游戏
{
        public static void main(String[] args)
        {
                for(int x=1;x>0;x++)//如果不输入正确让程序进入下面if中的break,那么程序将一直执行下去
                {
                        Scanner sc = new Scanner(System.in);//键盘输入
                        System.out.println("请输入账号");
                        String name = sc.nextLine();//输入的数据记录为name
                        System.out.println("请输入密码");
                        String pwd = sc.nextLine();//输入的数据记录为pwd
                        if (name.equals("admin") && pwd.equals("admin"))//比较输入的name和pwd,是否同时与admin相同。
                        {
                                break;//如果输入正确,中断程序
                        }
                        System.out.println("密码和账号输入有误");//输入错误,不会进入上面if,并且打印输入错误
                }
                System.out.println("玩个小游戏吧");//输入正确后,中断for循环,进入后面程序
                while(true)
                {
                        System.out.println("***************************");
                        System.out.println("输入1;输出9*9乘法表");
                        System.out.println("输入2;计算1~x的值");
                        System.out.println("输入3;计算长方形面积和周长");
                        System.out.println("输入4;二维数组的输入及遍历,及查询最大最小值;");
                        System.out.println("输入5;打印长row,宽col的矩形");
                        System.out.println("输入6;判断2个数是否相等");
                        System.out.println("输入666;结束游戏");
                        System.out.println("***************************");
                        Scanner sc = new Scanner(System.in);//键盘输入
                        int g = sc.nextInt();//输入的数据记录为g
                        if(g==1)//if循环,如果g=1,执行,循环体
                        {
                                jing();
                        }
                        else if(g==2)
                        {
                                jia();
                        }
                        else if(g==3)
                        {
                                chang();
                        }
                        else if(g==4)
                        {
                                shuZu();
                        }
                        else if(g==5)
                        {
                                juXing();
                        }
                        else if(g==6)
                        {
                                compare();
                        }
                        else if(g==666)//输入666,
                                break;//中断if循环
                        else
                                {
                        System.out.println("输入错误");
                        System.out.println("***************************");//其他输入情况
                                }
                }
        }
        //乘法口诀金字塔

        public static void jing(){
                for(int a=1;a<10;a++)//for循环,控制行数
                {
                        for(int b=1;b<=a;b++){//for循环,控制列数
                                System.out.print(b+"*"+a+"="+a*b+" "+"\t");//输出a*b=ab;列数不换行
                        }
                        System.out.println();//行数,换行
                }
        }

        public static void jia()
        {       
                Scanner sc = new Scanner(System.in);//键盘输入
                int sum = 0;int b = 0;//定义成员变量
                System.out.println("从1加到x,请输入x");
                int i = sc.nextInt();//输入的数据记录为i
                        for (int j = i;b <= j ;b++ )//for循环,把i赋值给j,b初始为0,如果b<j,将一直执行下面的求和
                        {
                                sum += b;//求和,sum=sum+b
                        }
                        System.out.println(sum);//输出sum的值
        }

        int length,width;//成员变量长
        //int width;//成员变量宽
        public int area()//定义面积方法
        {
                return length*width;
                //System.out.println("长方形面积是");
        }
        public int perimeter()//定义周长方法
        {
                return (length+width)*2;
                //System.out.println("长方形周长是");
        }

        public static void chang()
        {
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入长方形的长x:");
                int c = sc.nextInt();
                System.out.println("请输入长方形的宽y:");
                int d = sc.nextInt();
                ChangFangXing a = new ChangFangXing();
                a.length=c;
                a.width=d;
                System.out.println("长方形面积是"+a.area());
                System.out.println("长方形周长是"+a.perimeter());
        }

        public static void shuZu()
        {
                Scanner sc = new Scanner(System.in);//new 一个
                System.out.println("请输入a[x][]的x:");
                int x = sc.nextInt();//获取输入x
                System.out.println("请输入a[][y]的x:");
                int y = sc.nextInt();//获取输入y
                System.out.println("***********************");
                int arr[][] = new int [x][y];//把获取到的x y进行定义为数组的1维长度和2维长度。
                for(int a=0;a<x;a++)//控制行数
                {
                        for(int b=0;b<y;b++)//控制列数
                        {
                                System.out.println("输入"+"第"+a+"组"+"第"+b+"个元素"+"****");
                                int c = sc.nextInt();//获取输入,定义为c
                                arr[a][b]=c;//为每个数组的元素赋值
                                //从ab初始值开始赋值
//即 a[0][0],a[0][1],a[0][2]...a[0][y-1] ; a[1][0],a[1][1]...a[x-1][0],a[x-1][1]...a[x-1][y-1]
                        }
                }
                printArray(arr);//赋值完成后,调用printArray方法(遍历及查询输入的数组相关属性)
        }
        public static void printArray(int [][] arr)
        {
                int max=arr[0][0];int min=arr[0][0];//先将a[0][0]分别赋值给max和min
                int a=0;int b=0;int c=0;int d=0;//定义变量
                for(int x=0;x<arr.length;x++)//for循环,
                {
                        System.out.println("*********"+"a"+"["+x+"]"+"********");
                        //打印将要输入的数据属于数组中一维部分第几组
                        for(int y=0;y<arr[x].length;y++)
                        {
                                if(arr[x][y]>max)//依次判断数据是否大于max,大于则将该数据赋值给max
                                {
                                        max=arr[x][y];
                                        a=x;b=y;
                                }
                                if(arr[x][y]<min)//依次判断数据是否小于mmin,小于则将该数据赋值给min
                                {
                                        min=arr[x][y];
                                        c=x;d=y;
                                }
                                System.out.println("a"+"["+x+"]"+"["+y+"]"+arr[x][y]);
                                //从ab初始值开始打印
//即 a[0][0],a[0][1],a[0][2]...a[0][y-1] ; a[1][0],a[1][1]...a[x-1][0],a[x-1][1]...a[x-1][y-1]
                        }
                        System.out.println("***********************");
                }
                System.out.println("二维数组中最大的数是:"+"a"+"["+a+"]"+"["+b+"]"+":"+max);
                System.out.println("二维数组中最小的数是:"+"a"+"["+c+"]"+"["+d+"]"+":"+min);
                //输出
        }

        public static void juXing()
        {
                Scanner sc = new Scanner(System.in);//键盘输入
                int a = sc.nextInt();
                int b = sc.nextInt();
                print(a,b);
        }
        public static void print(int row,int col)//简单for循环
        {
                for (int a=1;a<=row ;a++ )
                {
                        for(int b=1;b<=col;b++)
                        {
                                System.out.print("*");
                        }
                        System.out.println();
                }
        }
        public static void compare()
        {
                System.out.println("请输入2个数");
                Scanner sc = new Scanner(System.in);
                System.out.println("第1个数");
                int a = sc.nextInt();
                System.out.println("第2个数");
                int b = sc.nextInt();
                if(a==b)
                {
                        System.out.println("2个数相等");
                }
                else
                {
                        System.out.println("2个数不相等");
                }
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马