JAVA经典例题六(10 examples)

  1. 将一个数组逆序输出
import java.util.Arrays;

public class ShuZuNiXu {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int a[]={11,12,34,45,63,21,66,88,9};
		int b[]=new int[a.length];
		for(int i=0;i<a.length;i++) {//新数组
			b[i]=a[a.length-1-i];
			System.out.print(b[i]+" ");		
		}
		System.out.println();
		System.out.println("数组逆序输出为:"+Arrays.toString(b));
		
	}
}
  1. 取一个整数a从右端开始的4~7位
import java.util.Scanner;
public class SiQiWei {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get =new Scanner(System.in);
		long num=get.nextLong();
		int a=(int)(num%(Math.pow(10, 7))-num%(Math.pow(10, 3)))/1000;
		System.err.println(a);
		get.close();
	}

}

  1. 打印出杨辉三角形
import java.util.Scanner;
public class YangHuiSanJiao {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get=new Scanner(System.in);
		int n=get.nextInt();
		int m[][]=new int[n+1][n+1];
	
		m[0][0]=1;
		m[1][0]=m[1][1]=1;
		if(n==1) {
			System.out.println(m[0][0]);
		}
		if(n==2) {
			System.out.println(m[0][0]);
			System.out.println(m[1][0]+" "+m[1][1]);
		}
		if(n>2) {
			System.out.println(m[0][0]);
			System.out.println(m[1][0]+" "+m[1][1]);
			
			for(int i=2;i<n;i++) {
				m[i][0]=m[i][i]=1;
				System.out.print(m[i][0]+" ");
				for(int j=1;j<i;j++) {
					m[i][j]=m[i-1][j-1]+m[i-1][j];
					System.out.print(m[i][j]+" ");			
				}
				System.out.println(m[i][i]);
			}
		}
		get.close();
		
	}
}
  1. 输入3个数a,b,c,按大小顺序输出
import java.util.Scanner;
public class ABCpaiXu {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get=new Scanner(System.in);
		int a=get.nextInt();
		int b=get.nextInt();
		int c=get.nextInt();
		int temp;
		if(a<b) {
			temp=b;
			b=a;
			a=temp;
		}
		if(c>a) {
			System.out.println(c+">"+a+">"+b);
		}
		else if(c>b) {
			System.out.println(a+">"+c+">"+b);
		}
		else {
			System.out.println(a+">"+b+">"+c);
		}
	}

}
  1. 输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
import java.util.Scanner;
public class ShuZu {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get =new Scanner(System.in);
		int array[]=new int[10];
		for(int i=0;i<10;i++) {
			array[i]=get.nextInt();
		}
		for(int i=0;i<10;i++) {
			if(array[i]>array[0])
				array[0]=array[i];
			if(array[i]<array[array.length-1])
				array[array.length-1]=array[i];
		}
		for(int j=0;j<array.length;j++) {
			System.out.print(array[j]+" ");
		}
		get.close();
	}

}
  1. 有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面的m个数
import java.util.Scanner;
public class HouYi {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get=new Scanner(System.in);
		System.out.println("请输入n个数:");
		int n=get.nextInt();
		System.out.println("输入一个数m,使n个数向后移m位:");
		int m=get.nextInt();
		
		int arr[]=new int[n];
		int arr1[]=new int[n];
		
		for(int i=0;i<n;i++) {
			arr[i]=get.nextInt();
		}
		for(int i=0;i<n;i++) {
			for(int j=m;j<n;j++) {
				arr1[j]=arr[j-m];
			}
			for(int k=0;k<m;k++) {
				arr1[k]=arr[n-m+k];
			}
			System.out.println(arr1[i]+" ");
		}
	}

}

  1. 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位
import java.awt.Toolkit;
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Toolkit t=Toolkit.getDefaultToolkit();
		t.beep();
		System.out.println("请输入总人数:");
		Scanner get=new Scanner(System.in);
		int n=get.nextInt();
		get.close();
		boolean isin[]=new boolean[n];
		for(int i=0;i<isin.length;i++) {
			isin[i]=true;
		}
		int count=n;//圈内剩余总人数
		int num=0;//定义报数
		int index=0;//索引
		while(count>1) {//循环直至最后一个人count=1
			if(isin[index]) {//此处限制index要小于n
				num++;
				if(num==3) {
					isin[index]=false;
					num=0;
					count--;
				}
			}
			index++;
			if(index==n) {
				index=0;
			}	
		}
		for(int i=0;i<n;i++) {
			if(isin[i]) {
				System.out.println("留下的是:"+(i+1));
			}
		}
	}
}

  1. 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度
import java.util.Scanner;
public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner get=new Scanner(System.in);
		String s=get.nextLine();
		Alength(s);
		get.close();
	}
	static void Alength(String s) {
		System.out.println("字符串的长度为:"+s.length());
	}

}
  1. 编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数1/1+1/3+…+1/n(利用指针函数)
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m=new Main();
		Scanner get=new Scanner(System.in);
		int n=get.nextInt();
		if(n%2==0) {
			double d=even(n);
			System.out.println("偶数的和为:"+d);
		}
		else {m.odd(n);}
		get.close();
	}
	static double even(int n) { 
		double sum=0.0;
		for(double i=2;i<=n;) {
			sum+=(1/i);
			i=i+2;
		}
		return sum;
	}
	public void odd(int n) {
		System.out.println("奇数的和为:");
		float sum=0;
		for(float i=1;i<=n;) {
			sum+=(float)(1/i);
			if(i<n) {
				System.out.print("1/"+(int)i+"+");
			}else {
				System.out.print("1/"+(int)i);
			}
			i=i+2;			
		}
		System.out.println("="+sum);
	}
}

  1. 字符串排序
public class Main {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String s[]= {"hello","alter","tell","number"};
		for(int i=1;i<s.length;i++) {
			if(s[i].compareTo(s[i-1])<0) {
				String s0=s[i];
				s[i]=s[i-1];
				s[i-1]=s0;
			}
		}
		for(String ss:s) {
			System.out.print(ss+" ");
		}
	}
}

猜你喜欢

转载自blog.csdn.net/WU2629409421perfect/article/details/86537857