更新時間:2020-07-06 16:05:03 來源:動力節點 瀏覽2041次
基本功訓練1——計算階乘
利用For循環計算數字N的階乘。實現計算階乘的公式為“n!=n*(n-1)*(n-2)…*2*1”。實例代碼如下:
public?classFactorial?{
public?static?void?main(String[]?args)?{
int?n?=?16;
long?result?=?1;
if?((n?<?0)?||?(n?>?17))?{
System.out.println("n的取值范圍是0至17,大于17會超出long類型范圍");
}?else?if?(n?==?0)?{
System.out.println("0的階乘等于1");
}?else?{
for?(int?i?=?n;?i?>?0;?i--)?{
result?*=?i;
}
System.out.println(n?+?"的階乘等于:"?+?result);
}
}
}
可以修改變量n的值計算不同數字的階乘。由于大于17的數值的階乘,超過了long類型的取值范圍,所以程序屏蔽了大于17的數字。另外,數學上沒有負數的階乘,所以程序要求n必須大于等于0。0的階乘為1,所以程序直接利用if判斷輸出0!等于1。其它數字將使用for循環計算結果。
運行結果如圖1所示。
基本功訓練2——遍歷21世紀的閏年
創建SearchLeapYear類,在該類的主方法中定義一個年歷21世紀所有年份的循環,在循環中判斷這些年份是否為閏年,并在控制臺中把所有閏年年份輸出,每行只輸出5個閏年。實例代碼如下:
public?classSearchLeapYear?{
public?static?void?main(String[]?args)?{
int?count=0;?//?聲明計數器
for?(int?year?=?2000;?year?<=?2100;year++)?{//?遍歷21世紀年份
if?(year?%?4?==?0?&&?year?%100?!=?0?||?year?%?400?==?0)?{?//?是閏年
System.out.print(year?+?"是閏年!\t");?//?輸出閏年
count++;//?計數器累加
if(count>4){//?每隔5個年份換行
System.out.println();
count=0;
}
}
}
}
}
實例運行結果如圖所示。
基本功訓練3——輸出空心的菱形
創建Diamond類,在該類的主方法中完成10行的空心菱形輸出,實現方法是使用兩個雙層For循環分別輸出菱形的上半部分與下半部分,實例代碼如下:
public?classDiamond?{
public?static?void?main(String[]?args)?{
int?size?=?10;
if?(size?%?2?==?0)?{
size++;//?計算菱形大小
}
for?(int?i?=?0;?i?<?size?/?2?+?1;i++)?{
for?(int?j?=?size?/?2?+?1;?j?>?i+?1;?j--)?{
System.out.print("");//?輸出左上角位置的空白
}
for?(int?j?=?0;?j?<?2?*?i?+?1;j++)?{
if?(j?==?0?||?j?==?2?*?i)?{
System.out.print("*");//輸出菱形上半部邊緣
}?else?{
System.out.print("");//?輸出菱形上半部空心
}
}
System.out.println("");
}
for?(int?i?=?size?/?2?+?1;?i?<?size;i++)?{
for?(int?j?=?0;?j?<?i?-?size?/2;?j++)?{
System.out.print("");//?輸出菱形左下角空白
}
for?(int?j?=?0;?j?<?2?*?size?-?1-?2?*?i;?j++)?{
if?(j?==?0?||?j?==?2?*?(size?-i?-?1))?{
System.out.print("*");//輸出菱形下半部邊緣
}?else?{
System.out.print("");//?輸出菱形下半部空心
}
}
System.out.println("");
}
}
}
實例運行結果如圖所示。
以上就是動力節點java培訓機構的小編針對“編程基礎分享,Java流程控制練習”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習