&& Java經典面試題

       在Java面試中,由於面試時間倉促,HR需要短時間內瞭解面試者的基本功,必須讓面試者脫離編譯器、電腦的情況下,寫出一些基礎的代碼,下面整理幾道經典的面試題目:

1、打印出9行菱形,如下圖所示

    *

   ***

  *****

 *******

*********

 *******

  *****

   ***

    *


參考源代碼:
public class Test1
{
	public static void main(String[] args)
	{
		int a=5;
		for(int i=1;i<=a;i++)
		{
            for(int j=1;j<=a-i;j++)
			{
				System.out.print(" ");
			}
            for(int k=1;k<=2*i-1;k++)
			{
				System.out.print("*");
			}
			System.out.println("");
		}
		int b=4;
		for(int i=1;i<=b;i++)
		{
			for(int j=1;j<=i;j++)
			{
				System.out.print(" ");
			}
			for(int k=1;k<=9-2*i;k++)
			{
				System.out.print("*");
			}
			System.out.println("");
		}
	}
}

2、實現輸入任意五個整數利用冒泡算法排序

public class Test2
{
	public static void main(String[] args)
	{
		int[] a={6,8,3,5,2};
		for(int i=1;i<5;i++)
		{
			for(int j=0;j<5-i;j++)
			{
				int p;
				if(a[j]>a[j+1])
				{
					p=a[j];
					a[j]=a[j+1];
					a[j+1]=p;
				}
			}
		}
		for(int i=0;i<5;i++)
		{
			System.out.print(a[i]+" ");
		}
	}
}


3、找到100-999之間所有的水仙花數

public class Test3
{
	public static void main(String[] args)
	{
		for(int i=100;i<=999;i++)
		{
			int a=i/100;             //百位數    a=999/100=9
			int b=(i-a*100)/10;     //十位數     b=(999-9*100)/10
			int c=i-a*100-b*10;    //個位數
			int d=a*a*a+b*b*b+c*c*c;
			if(i==d)
			{
				System.out.println(i);
			}
		}
	}
}

4、實現12345逆序變成54321

public class Test4
{
	public static void main(String[] args)
	{
		int z=12345;           
		int a=z/10000;           //int e=num/10000;
		int b=(z-10000)/1000;    //int d=(num/1000)%10;
		int c=(z-12000)/100;     //int c=(num/100)%10;
		int d=(z-12300)/10;      //int b=(num/10)%10;
		int e=z-12340;           //int a=num%10;
		System.out.print(e*10000+d*1000+c*100+b*10+a);
	}
}



未完待續。。。。。。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章