java基础习题50道(七)

来源:互联网 发布:万网域名cname怎么设置 编辑:程序博客网 时间:2024/06/07 00:02
package com.oracle.day161105_java50;


/*
 * 题目:将一个数组逆序输出。
        程序分析:用第一个与最后一个交换。
 * */
public class Demo31 {


public static void main(String[] args) {

int [] arr = {1,2,3,4,5,6,7,8,9,10};
System.out.println("原始数组:");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
System.out.println();
System.out.println("逆序排列:");
for(int i=0;i<arr.length/2;i++){
int temp = arr[arr.length-i-1];
arr[arr.length-i-1] = arr[i];
arr[i] = temp;
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
}

}


package com.oracle.day161105_java50;


import java.util.Scanner;


/*
 * 【程序32】
          题目:取一个整数a从右端开始的4~7位。
          
 * */
public class Demo32 {


public static void main(String[] args) {
       //输入一个长整数
Scanner scan = new Scanner(System.in);
System.out.println("请输入一个7位整数:");
long l = scan.nextLong();
scan.close();
//以下截取字符
String str = Long.toString(l);
char[] ch = str.toCharArray();
int n = ch.length;
if(n<7)
 System.out.println("输入的数小于7位!");
else
 System.out.println("截取的4~7位数字:"+ch[n-7]+ch[n-6]+ch[n-5]+ch[n-4]);
}  
}



package com.oracle.day161105_java50;


/*
 * 【程庿3〿
         题目:打印出杨辉三角形(要求打印凿0行如下图_
        程序分析_
     1 
    1 1 
   1 2 1 
  1 3 3 1 
 1 4 6 4 1 
1 5 10 10 5 1 
 * */
public class Demo33 {


public static void main(String[] args) {
int[][] n = new int[10][21];
n[0][10] = 1;
for(int i=1;i<10;i++)
 for(int j=10-i;j<10+i+1;j++)
   n[i][j] = n[i-1][j-1]+n[i-1][j+1];
for(int i=0;i<10;i++){
for(int j=0;j<21;j++){
if(n[i][j]==0)
 System.out.print("   ");
else{
   if(n[i][j]<10)
     System.out.print("  "+n[i][j]);//空格为了美观霿Ɓ
   else if(n[i][j]<100)
     System.out.print(" "+n[i][j]);
     else
       System.out.print(n[i][j]);
 }
}
System.out.println();
}
}
}



package com.oracle.day161105_java50;


import java.util.Scanner;


/*
 *  题目:输入3个数a,b,c,按大小顺序输出。
            程序分析:利用指针方法。
 * */
public class Demo34 {


public static void main(String[] args) {
System.out.println("请输入三个数:");
Scanner sc = new Scanner(System.in);
int n1 = sc.nextInt();
int n2 = sc.nextInt();
int n3 = sc.nextInt();
int [] arr ={n1,n2,n3};
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
System.out.println();
System.out.println("排序后为:");
for (int i = 0; i < arr.length; i++) {

int min = i;
for (int j = i+1; j < arr.length; j++) {
if(arr[min]>arr[j]){
min=j;
}
}
if(min!=i){
int temp = arr[i];
arr[i]=arr[min];
arr[min]=temp;
}
}

for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
}
}



package com.oracle.day161105_java50;


/*
 * 【程序35】
题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
 * */
public class Demo35 {


public static void main(String[] args) {
int [] arr = {2,4,6,8,10,1,3,5,7,9};
int max = 0,min=0;
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"\t");
}
for (int i = 1; i < arr.length; i++) {
for (int j = 0; j < arr.length-i; j++) {
if(arr[j]>arr[j+1]){
int temp = arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}

System.out.println();
System.out.println("排序后:");
for (int i = 0; i < arr.length; i++) {
min=arr[0];
max=arr[9];
System.out.print(arr[i]+"\t");
}

System.out.println();
System.out.println("最大的数:"+max+"\t"+"最小的数:"+min);

for (int i = 0; i < arr.length; i++) {
arr[0]=max;
arr[9]=min;
System.out.print(arr[i]+"\t");
}
}
}

原创粉丝点击