java小练习

Posted 再吃一个橘子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java小练习相关的知识,希望对你有一定的参考价值。

1.从键盘输入n个数,求这n个数中的最大数与最小数并输出,输出样例如下:

  

import java.util.Scanner;
public class Test {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入数组长度:");
		int num = sc.nextInt();
		System.out.println("请输入数组中的"+num+"个数:");
		int []arr = new int[num];
		
		int i,min,max;
		for(i = 0;i < num;i++) {
			arr[i] = sc.nextInt();
		}
		
		for(i = 0,min = arr[0],max = arr[num-1];i < num;i++) {
			if(arr[i] < min) {
				min = arr[i];
			}
			if(arr[i] > max) {
				max = arr[i];
			}
		}
		System.out.println("最小值是"+min+"最大值是"+max);
	
	}
}

该题精华,与君共享:最大值最小值的循环遍历比较

2.找出4*5矩阵中值最小和最大元素,并分别输出其值及所在的行号和列号,输出样例如下:

import java.util.Scanner;
public class Test {
	public static void main(String[] args) {
		
			int[][] arr = new int[4][5];
			Scanner sc = new Scanner(System.in);
			int i, j, min, max, minRow = 0, minColumn = 0, maxRow = 0, maxColumn = 0;
			System.out.println("请顺序输入4*5矩阵中的值: ");
			for(i = 0; i < 4; i++) {
				for(j = 0; j < 5; j++) {
					arr[i][j] = sc.nextInt();
				}		
			}
			for(i = 0, min = arr[0][0], max = arr[3][4]; i < 4; i++) {
				for(j = 0; j < 5; j++) {
					if(arr[i][j] <= min) {
						min = arr[i][j];
						minRow = i;
						minColumn = j;
					}
					if(arr[i][j] >= max) {
						max = arr[i][j];
						maxRow = i;
						maxColumn = j;						
					}
				}
			}
			System.out.println("最大值是"+max+"\\t最大值所在行数"+maxRow+"\\t最大值所在列数"+maxColumn);
			System.out.println("最小值是"+min+"\\t最小值所在行数"+minRow+"\\t最小值所在列数"+minColumn);
		}
}

该题精华,与君共享与第一题异曲同工,  需要注意 用数组接收输入 的代码

3.求一个3阶方阵的对角线上个元素之和,输出样例如下:

import java.util.Scanner;
public class Test {
	public static void main(String[] args) {

		int[][] arr = new int[3][3];
		Scanner sc = new Scanner(System.in);
		
		int i, j, sum = 0;
		System.out.println("3阶方程是:");
		for(i = 0; i< 3; i++) {
			for(j = 0; j < 3; j++) {
				arr[i][j] = sc.nextInt();
				}
			}
		for(i = 0; i < 3; i++) {
			for(j = 0; j < 3; j++) {
				if((i == j)||(i+j) == 2) {
					sum += arr[i][j];
				}
			}
		}
		System.out.println("对角线元素和是" + sum);
	}
}

该题精华,与君共享:对角线考虑的情况分两种:1.i == j   2.(i+j) == 2

4.产生0~100之间的8个随机整数,并利用冒泡排序法将其升序排序后输出,输出样例如下:

(冒泡排序算法:每次进行相邻两数的比较,若次序不对,则交换两数的次序)。

import java.util.Arrays;
import java.util.Scanner;
public class Test {
	public static void main(String[] args) {
		int[] arr = new int[8];
		int i, j, temp;
		for(i = 0; i < 8; i++) {
			arr[i] = (int)(Math.random()*100);
		}
		System.out.print("随机数: ");
		for(i = 0; i < 8; i++) {
			System.out.print(" "+arr[i]+" ");
		}
		System.out.println();
		for(i = 0; i < 8; i++) {
			for(j = 0; j < 7-i; j++) {
				if(arr[j] > arr[j+1]) {
					temp = arr[j];
					arr[j] = arr[j+1];
					arr[j+1] = temp;
				}
			}
		}
		System.out.println("排序后的数组:"+Arrays.toString(arr));
	}
}

该题精华,与君共享

5.输入3个数,找到最大值和最小值输出

import java.util.Scanner;
 
public class 求三个数中的最大最小值 {
 
    public static void main(String[] args) {
        // 求三个数中的最大最小值
        Scanner superman = new Scanner(System.in);
        int a,b,c;
        int max,min;
        System.out.println("请输入三个数");
        System.out.print("请输入第一个数:");
        a = superman.nextInt();
        System.out.print("请输入第二个数:");
        b = superman.nextInt();
        System.out.print("请输入第三个数:");
        c = superman.nextInt();
        max=c>(a>b?a:b)?c:(a>b?a:b);
        min=c<(a<b?a:b)?c:(a<b?a:b);
        System.out.println("最大值:"+max);
        System.out.println("最小值:"+min);
 
    }
 
}

该题精华,与君共享:判断基数不多时,用三目运算符来判断大小

6.编程统计用户从键盘输入的字符串中所包含的字母、数字和其它字符的个数

import java.util.Scanner;

public class Test{
	public static void main(String[] args) {
		String str;
		Scanner s = new Scanner(System.in);
		System.out.println("请输入字符串:");
		str = s.nextLine();
		int letterCount = 0,numCount = 0,otherCount = 0;
		int i;
		char ch;
		for(i = 0;i < str.length();i++) {
			ch = str.charAt(i);
			if((ch >= 'a'&& ch <= 'z')||(ch >= 'A' && ch <= 'Z'))
				letterCount++;
			if(ch >= '0' && ch <= '9')
				numCount++;
			else
				otherCount++;
		}
		System.out.println("字母的个数是"+letterCount+"\\t数字的个数是"+numCount+"\\t其他"+(otherCount-letterCount));
	}
}

该题精华,与君共享

1.str.length()中的length() 方法用于返回字符串的长度

2.str.charAt()中的char.At()方法用于返回指定索引处的字符,见如下实例

3.注意otherCount-letterCount

public class Test {
    public static void main(String args[]) {
        String s = "www.runoob.com";
        char result = s.charAt(6);
        System.out.println(result);
    }
}
//输出结果是n

以上是关于java小练习的主要内容,如果未能解决你的问题,请参考以下文章

java小练习,io操控。

Java-集合编程小练习

Java开发 | 图书管理系统 | 小程序 | 小练习

微信小程序代码片段

java 学习第二天小练习

java29