zoukankan      html  css  js  c++  java
  • Java学习笔记6(循环和数组练习题)

    1.输出100到1000的水仙花数:

    public class LoopTest{
        public static void main(String[] args){
            int bai = 0;
            int shi = 0;
            int ge = 0;
            for(int i = 100; i < 1000; i++){
                bai = i/100;
                shi = i/10%10;
                ge = i%10;
                if(bai*bai*bai+shi*shi*shi+ge*ge*ge == i ){
                    System.out.println(i);
                }
            }
        }
    }

    2.打印所有字母:

    public class LoopTest{
        public static void main(String[] args){
            char lower = 'a';
            char upper = 'A';
            for(int i = 0 ; i < 26 ; i++){
                System.out.println(lower+"   "+upper);
                lower++;
                upper++;
            }
        }
    }

    3.打印99乘法表:

    public class LoopTest{
        public static void main(String[] args){
            for(int i = 1; i <=9 ; i++){
                for(int j = 1 ; j<=i ; j++){
                    System.out.print(j+"*"+i+"="+j*i+"    ");
                }
                System.out.println();
            }
        }
    }

    4.按格式遍历数组:

    public class ArrayTest{
        public static void main(String[] args){
            int[] arr1 = {4,6,7,1};
            int[] arr2 = {1,2,3,9,10};
            printArray(arr1);
            printArray(arr2);
        }
        public static void printArray(int[] arr){
            System.out.print("[");
            for(int i = 0 ; i <arr.length ; i++){
                if( i == arr.length-1){
                    System.out.println(arr[i]+"]");
                }else{
                    System.out.print(arr[i]+",");
                }
            }
        }
    }

    5.数组元素逆序(注意:不是反向遍历):

    public class ArrayTest{
        public static void main(String[] args){
            int[] arr = {1,2,3,4,7,8,9};
            reverse(arr);
            printArray(arr);
        }
        public static void reverse(int[] arr){
            for(int min=0,max = arr.length-1; min<max ; min++,max--){
                int temp = arr[min];
                arr[min] = arr[max];
                arr[max] = temp;
            }
        }
         public static void printArray(int[] arr){
            System.out.print("[");
            for(int i = 0 ; i <arr.length ; i++){
                if( i == arr.length-1){
                    System.out.println(arr[i]+"]");
                }else{
                    System.out.print(arr[i]+",");
                }
            }
        }
    }

    6.选择排序:

    public class ArrayTest{
        public static void main(String[] args){
            int[] arr = {3,1,5,7,8,9,2};
            selectSort(arr);
            printArray(arr);
        }
        public static void selectSort(int[] arr){
            for(int i = 0; i < arr.length-1; i++){
                for(int j = i+1; j<arr.length; j++){
                    if(arr[i]>arr[j]){
                        int temp = arr[i];
                        arr[i] = arr[j];
                        arr[j] = temp;
                    }
                }
            }
        }
        public static void printArray(int[] arr){
            System.out.print("[");
            for(int i = 0 ; i <arr.length ; i++){
                if( i == arr.length-1){
                    System.out.println(arr[i]+"]");
                }else{
                    System.out.print(arr[i]+",");
                }
            }
        }
    }

    7.冒泡排序:

    public class ArrayTest{
        public static void main(String[] args){
            int[] arr = {3,1,5,7,8,9,2};
            bubbleSort(arr);
            printArray(arr);
        }
        public static void bubbleSort(int[] arr){
            for(int i = 0; i<arr.length-1 ;i++){
                for(int j = 0; j<arr.length-i-1; j++){
                    if(arr[j]>arr[j+1]){
                        int temp = arr[j];
                        arr[j] = arr[j+1];
                        arr[j+1] = temp;
                    }
                }
            }
        }
        public static void printArray(int[] arr){
            System.out.print("[");
            for(int i = 0 ; i <arr.length ; i++){
                if( i == arr.length-1){
                    System.out.println(arr[i]+"]");
                }else{
                    System.out.print(arr[i]+",");
                }
            }
        }
    }

    8.折半查找法(注意必须是有序的数组):

    public class ArrayTest{
        public static void main(String[] args){
            int[] arr = {1,3,5,7,9,11};
            int index = binarySearch(arr, 7);
            System.out.println(index);
        }
        public static int binarySearch(int[] arr,int key){
            int min = 0;
            int max = arr.length-1;
            int mid = 0;
            while( min<=max ){
                mid = (min+max)/2;
                if(key>arr[mid]){
                    min = mid+1;
                }else if(key<arr[mid]){
                    max = mid-1;
                }else{
                    return mid;
                }
            }
            return -1;
        }
    }
  • 相关阅读:
    用电脑给手机安装App
    切换皮肤的实现
    瀑布流的简单实现
    HTML5的实用
    HTML5的特性,发展,及使用
    录音的使用步骤
    支付宝集成步骤
    美团(iPad)顶部界面的简单实现, 及开发时常见bug
    真机调试/打包测试/程序发布/内购的具体操作流程
    IOS 触摸事件的处理
  • 原文地址:https://www.cnblogs.com/xuyiqing/p/8214329.html
Copyright © 2011-2022 走看看