java基礎程式碼練習
1、用switch語句實現鍵盤錄入月份,輸出對應的季節
import java.util.Scanner;
public class T11{
public static void main(String[] args){
Scanner s=new Scanner(System.in);
System.out.println("請輸入一個月份數字:");
int month=s.nextInt();
switch(month){
case 1:
System.out.println(month+"月屬於春季");
break;
case 2:
System.out.println(month+"月屬於春季");
break;
case 3:
System.out.println(month+"月屬於春季");
break;
case 4:
System.out.println(month+"月屬於夏季");
break;
case 5:
System.out.println(month+"月屬於夏季");
break;
case 6:
System.out.println(month+"月屬於夏季");
break;
case 7:
System.out.println(month+"月屬於秋季");
break;
case 8:
System.out.println(month+"月屬於秋季");
break;
case 9:
System.out.println(month+"月屬於秋季");
break;
case 10:
System.out.println(month+"月屬於冬季");
break;
case 11:
System.out.println(month+"月屬於冬季");
break;
case 12:
System.out.println(month+"月屬於冬季");
break;
default:
System.out.println("輸入數字不在1-12範圍內,請重新輸入");
}
}
}
2、下列題目使用for迴圈語句:
習題一:請在控制檯輸出資料1-10
public class T21{
public static void main(String[] args){
for(int i=1;i<=10;i++){
System.out.print(i+" ");
}
}
}習題二:請在控制檯輸出資料10-1
習題四:求出1-100之間偶數和
class T24{
public static void main(String[] args){
int sum=0;
for(int i=2;i<=100;i+=2){
sum=sum+i;
}
System.out.println("1-100之間偶數和是:"+sum);
}
}習題五:求出1-100之間奇數和
習題六:求5的階乘
class T26{
public static void main(String[] args){
int sum=1;
for(int i=5;i>=1;i--){
sum=sum*i;
}
System.out.println("5的階乘是:"+sum);
}
}習題七:在控制檯輸出所有的”水仙花數”
習題八:統計”水仙花數”共有多少個
public class T28{
public static void main(String[] args){
int a,b,c;
int sum=0;
for(int i=100;i<1000;i++){
a=i/100;
b=i%100/10;
c=i%10;
if(a*a*a+b*b*b+c*c*c==i){
sum=sum+1;
}
}
System.out.println("水仙花數共有:"+sum+"個");
}
}習題九:請在控制檯輸出滿足如下條件的五位數
個位等於萬位
十位等於千位
個位+十位+千位+萬位=百位
class T29{
public static void main(String[] args){
int a,b,c,d,e;
System.out.println("輸出符合條件的五位數:");
for(int i=10000;i<=99999;i++){
a=i/10000;
b=i%10000/1000;
c=i%10000%1000/100;
d=i%10000%1000%100/10;
e=i%10;
if(e==a&&d==b&&a+b+d+e==c){
System.out.println(i+" ");
}
}
}
}習題十:請統計1-1000之間同時滿足如下條件的資料有多少個:
對3整除餘2
對5整除餘3
對7整除餘2
public static void main(String[] args){
System.out.println("符合要求的整數個數是:");
int num=0;
for(int i=1;i<=1000;i++){
if(i%3==2&&i%5==3&&i%7==2){
num=num+1;
}
}
System.out.print(num+" ");
}
3、下列題目使用while 語句
習題一:請在控制檯輸出滿足如下條件的五位數
個位等於萬位
十位等於千位
個位+十位+千位+萬位=百位
public class T31{
public static void main(String[] args){
int a,b,c,d,e;
System.out.println("輸出符合要求的資料:");
int i=10000;
while (i<=99999){
a=i/10000;
b=i%10000/1000;
c=i%10000%1000/100;
d=i%10000%1000%100/10;
e=i%10;
if(e==a&&d==b&&a+b+d+e==c){
System.out.println(i);
}
i++;
}
}
} 習題二:請統計1-1000之間同時滿足如下條件的資料有多少個:
對3整除餘2
對5整除餘3
對7整除餘2
public class T32{
public static void main(String[] agrs){
int i=1;
int num=0;
System.out.println("符合要求的整數個數是:");
while (i>=1&&i<=1000){
if(i%3==2&&i%5==3&&i%7==2){
num=num+1;
}
i++;
}
System.out.println(num+" ");
} 習題三:我國最高山峰是珠穆朗瑪峰:8848m,我現在有一張足夠大的紙張,厚度為:0.01m。請問,我摺疊多少次,就可以保證厚度不低於珠穆朗瑪峰的高度?
class T33{
public static void main(String[] args){
int n=1;//定義摺疊次數
double i=0.01,j=0;
System.out.println("摺疊的次數為:");
while(j<=8848){
j=0.01*(2^n);//計算摺疊後的厚度
n++;
}
System.out.println(n);
}
}
4、下列題目使用do.......while 語句
習題一:請在控制檯輸出滿足如下條件的五位數
個位等於萬位
十位等於千位
個位+十位+千位+萬位=百位
class T41{
public static void main(String[] args){
int a,b,c,d,e;
int i=10000;
System.out.println("請輸出滿足條件的五位數:");
do{
a=i/10000;
b=i%10000/1000;
c=i%10000%1000/100;
d=i%10000%1000%100/10;
e=i%10;
if(a==e&&b==d&&a+b+d+e==c){
System.out.print(i+" ");
}
i++;
}while(i>=10000&&i<=99999);
}
} 習題二:請統計1-1000之間同時滿足如下條件的資料有多少個:
對3整除餘2
對5整除餘3
對7整除餘2
class T42{
public static void main(String[] args){
int i=1,sum=0;
System.out.println("滿足條件的資料的個數是:");
do{
if(i%3==2&&i%5==3&&i%7==2){
sum=sum+1;
}
i++;
}while(i>=1&&i<=1000);
System.out.println(sum);
}
}5、下列題目使用迴圈巢狀語句
習題一:需求:請輸出一個4行5列的星星(*)圖案。
class T51{
public static void main(String[] args){
for(int i=1;i<=4;i++){
for(int j=1;j<=5;j++){
System.out.print("*");
}
System.out.println();
}
}
} 習題二:需求:請輸出如下圖形
*
**
***
****
*****
習題三: 需求:在控制檯輸出九九乘法表。
public class T53{
public static void main(String[] args){
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
System.out.print(j+"*"+i+"="+i*j+"\t");
}
System.out.println();
}
}
}
6、下列題目使用(迴圈語句結合break的練習)
小芳的媽媽每天給她2.5元錢,她都會存起來,但是,每當這一天是存錢的第5天或者5的倍數的話,她都會花去6元錢,請問,經過多少天,小芳才可以存到100元錢。
public class T61{
public static void main(String[] args){
int day=0;
double sum=0;
while(true){
sum=sum+2.5;
if(day%5==0){
sum=sum-6;
}//小芳在5的倍數那天花去6元
if(sum>=100){
System.out.println("小芳經過"+day+"天存了100元");
break;
}
day++;
}
}
}