欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java学习关于循环和数组练习题整理

时间:2020-10-02 10:20:56|栏目:JAVA代码|点击:

循环例子:

while循环和do…while循环

whlie(条件语句) {
	循环体
}//先进行条件语句的判断,再进行循环体
do {
	循环体
}whlie (条件语句)//先执行一次循环后再进行条件语句的判断

break语句

break语句:结束全部循环,具体应用如下:

//1+2+3+...+n<1000,求n
//此题可以利用break语句在和大于1000时结束循环,输出n的值
public static void deal() {
  int sum = 0;
  int i = 1;
  for (; ; i++) {
   sum = sum + i;
   if (sum > 1000) {
    break;//当和大于1000时,利用break语句跳出循环
   }
  }
  System.out.println(i);
 }

相关实例练习题:

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;
 }
}

上一篇:改变JAVA窗体属性的操作方法

栏    目:JAVA代码

下一篇:SWT(JFace) Menu、Bar...体验代码

本文标题:Java学习关于循环和数组练习题整理

本文地址:http://www.codeinn.net/misctech/6046.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有