JAVA編程習題及答案_完全版_第1頁
JAVA編程習題及答案_完全版_第2頁
JAVA編程習題及答案_完全版_第3頁
JAVA編程習題及答案_完全版_第4頁
JAVA編程習題及答案_完全版_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、1. testlOOOl 顯示短句/程序填空./在屏幕上顯示一個短句Programming in Java is fun!import java.io.*;public class Test10001public static void main(String args)/* */System.out.println(Programming in Java is fun!);2. test10002 顯示網(wǎng)格/*程序填空。在屏幕上顯示如下網(wǎng)格。| | | | |*/import java.io.*;public class Test10002public static void main(St

2、ring args)/* */System.out.pri ntlnSystem.out.println(| | |);System.out.println(| | |);System.out.pri ntln3. test10095 顯示 hello world !import java.io.*;public class Test10095public static void main(String args)/* */System.out.pri ntln (Hello world!);4.test10097 求兩個數(shù)的和/*輸入 n 表示做 n 次下面的操作: 輸入兩個正整數(shù),輸出它們

3、的和.例:輸入:2 / 表示 n=2,做兩次操作10 1120 30輸出:sum=21sum=50*/ import java.util.Sca nner;public class Test10097public static void main(String args)int n,a,b,i,sum;Scanner in=new Sca nn er(System.i n); n=in.n ext In t();/輸入 nfor(i=1; i=n; i+)/* */a=in.n ext In t(); b=in.n ext In t();sum=a+b; System.out.pri ntl

4、n(sum=+sum);5.test20001 求兩個數(shù)的和與差/*程序填空,不要改變與輸入輸出有關的語句。 輸入整數(shù) a 和b,計算并輸出 a、b 的和與差。例:輸入2 -8輸出The sum is -6The differe nee is 10*/import java.io.*;import java.util.Sca nner;public class Test20001public static void main(String args) int a, b, sum, diff;Scanner in=new Sca nn er(System.i n);a=i n.n extI nt

5、();b=in.n ext In t();/* */sum=a+b;diff=a-b;System.out.println(The sum is +sum); System.out.println(The difference is +diff);6.test20002求平方根/程序填空,不要改變與輸入輸出有關的語句。 輸入 1 個實數(shù) x,計算并輸出其平方根。例:輸入1.21輸出The square root of 1.21 is 1.1 import java.io.*;import java.util.Sca nner;public class Test20002public stati

6、c void main(String args) double x, root;Scanner in=new Sca nn er(System.i n); x=in.n extDouble();/* */root=Math.sqrt(x);System.out.println(The square root of +x+ is +root);7. test20003 華氏溫度轉換成攝氏溫度/*程序填空,不要改變與輸入輸出有關的語句。輸入華氏溫度 f ,計算并輸出相應的攝氏溫度c。c = 5/9(f-32).例:括號內(nèi)是說明輸入17.2 (華氏溫度)輸出The temprature is -8.

7、222222222222223*/import java.util.Sca nner;public class Test20003 public static void main( Stri ng args) Scanner in=new Sca nn er(System.i n);double f, c;f=i n.n extDouble();/* */c=5*(f-50)/9+10;System.out.pri ntl n(The temprature is +c);8. test20004 計算旅途時間程序填空,不要改變與輸入輸出有關的語句。輸入 2 個整數(shù) timel 和 time2,

8、表示火車的出發(fā)時間和到達時間,計算并輸出旅途時間。有效的時間范圍是0000 到 2359,不需要考慮出發(fā)時間晚于到達時間的情況。例:括號內(nèi)是說明輸入712 1411 (出發(fā)時間是 7: 10,到達時間是 14: 11)輸出The train journey time is 6 hrs 59 mins.import java.util.Sca nner; public class Test20004 public static void main(String args) Scanner in=new Sca nn er(System.i n);int time1, time2, hours,

9、mins;time1=i n.n extI nt();time2=i n.n extI nt();/* */time1=(time1/100)*60+time1%100;time2=(time2/100)*60+time2%100;hours=(time2-time1)/60;mi ns=(time2-time1)-hours*60;System.out.pri ntln (Thetrain journey time is +hours+ hrs + mi ns+min s.);9.test20005 數(shù)字加密程序填空,不要改變與輸入輸出有關的語句。輸入 1 個四位數(shù),將其加密后輸出。方法是將

10、該數(shù)每一位上的數(shù)字加9,然后除以 10 取余,做為該位上的新數(shù)字,最后將第 1 位和第 3 位上的數(shù)字互換,第2 位和第 4 位上的數(shù)字互換,組成加密后的新數(shù)。例:括號內(nèi)是說明輸入1257輸出The encrypted number is 4601(每一位上的數(shù)字加 9 除以 10 取余后,得 0146,交換后得到 4601) import java.util.Sca nner;public class Test20005 public static void main(String args) Scanner in=new Sca nn er(System.i n);int number,

11、digit1, digit2, digit3, digit4, newnum;int temp; /我自己定義了一個變量nu mber=i n.n extI nt();/* */digit 1=n umber/1000;digit2=( number%1000)/100;digit3=( nu mber%1000)%100)/10;digit4=nu mber%10;/以下是測試語句,看看我們的想法是不是正確但是作業(yè)在提交時一定要把它注釋掉/System.out.print( +digit1+ +digit2+ +digit3+ +digit4);/-digit1=(digit1+9)%10;

12、digit2=(digit2+9)%10;digit3=(digit3+9)%10;digit4=(digit4+9)%10;/-temp=digit1;digit 仁 digit3;digit3=temp;/-temp=digit2;digit2=digit4;digit4=temp;/-new num=digit1*1000+digit2*100+digit3*10+digit4;System.out.println(The encrypted number is +newnum);10.test20006 大小寫字母轉換程序填空,不要改變與輸入輸出有關的語句。 輸入一個大寫英文字母,輸出

13、相應的小寫字母。例:輸入G輸出gimport java.io.*;public class T20006 public static void main(String args) throws IOException char ch; ch=(char)System.i n. read();/* */ch=(char)(ch+32);/以 ASCII 碼計算System.out.pri ntl n( ch);11.Test20007 計算三門課程的平均成績程序填空,不要改變與輸入輸出有關的語句。已知某位學生的數(shù)學、英語和計算機課程的成績分別是 課程的平均分。本題無輸入。輸出示例:math =

14、87, eng = 72, comp = 93average = 84 public class test20007 public static void main(String args) int math, eng, comp, average;math=87;en g=72;comp=93;average=(math+e ng+comp)/3;System.out.println(math = +math+, eng = +eng+, comp = +comp);System.out.pri ntl n(average = + average);12.test20008 計算存款利息 程

15、序填空,不要改變與輸入輸出有關的語句。輸入存款金額 money、存期 year 和年利率 rate ,根據(jù)下列公式計算存款到期時的利息interest(稅前),輸出時保留 2 位小數(shù)。in terest = mon ey(1+rate)Ayear - money輸入輸出示例:括號內(nèi)為說明輸入1000 3 0.025 (money = 1000, year = 3, rate = 0.025)輸出in terest = 76.89 import java.util.Sca nner; public class test20008 public static void main( Stri ng

16、args) int mon ey, year;double in terest, rate;Scanner in=new Sca nn er(System.i n);/* 使用 in.nextDouble()和 in.nextInt() 輸入 double 和 int 型數(shù)據(jù) */*/money=in.n ext In t();year =in.n ext In t();rate=i n.n extDouble();in terest= mon ey*Math.pow(1+rate),year)-mon ey;System.out.pri ntln (i nterest = + (in t)(

17、i nterest*100+0.5)/100.0);*87 分、72 分和 93 分,求該生 3 門13.test30001顯示兩級成績程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) 輸入一個學生的數(shù)學成績,如果它低于 輸出使用System.out.println(Pass); 例:括號內(nèi)是說明 輸入2 (repeat=2)60 59輸出PassFailimport java.util.Sca nner;public class Test30001public static void main(String args)int ri, repeat;

18、int mark;Scanner in=new Sca nn er(System.in); repeat=i n.n extI nt();for(ri=1; ri=60)System.out.pri ntln(Pass);,做 repeat 次下列運算:60,輸出“ Fail ”否則,輸出“ Pass”。及 System.out.println(Fail);elseSystem.out.pri ntl n( Fail);*/14.test30002 找最小值程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算: 輸入四個整

19、數(shù),輸出其中的最小值。例:括號內(nèi)是說明輸入3 (repeat=3)12 6 1 9010 40 30 20-1 -3 -4 -5輸出min is 1 (12 6 1 90中的最小值是 1)min is 10 (10 40 30 20中的最小值是 10)min is -5 (-1 -3 -4 -5中的最小值是-5)import java.util.Sca nner;public class Test30002 public static void main( Stri ng args)int ri, repeat;int a, b, c, d, min;Scanner in=new Sca nn

20、 er(System.i n);repeat=i n.n extI nt();for(ri=1; rib)mi n=b;if(mi nc)mi n=c;if(mi n d)mi n=d;System.out.println(min is +min);15.test30003 求三角形的面積和周長 程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:輸入三角形的三條邊 a, b, c,如果能構成一個三角形,輸出面積area 和周長 perimeter ;否則,輸出 These sides do not correspond

21、 to a valid triangle”。在一個三角形中,任意兩邊之和大于第三邊。三角形的面積計算公式:aere*area = s(s-a)(s-b )(s-c)其中:s = (a+b+c)/2輸出代碼:System.out.pri ntl n(area=+area+;perimeter=+perimeter);System.out.pri ntln (These sides do not corresp ond to a valid tria ngle);例:括號內(nèi)是說明輸入2 (repeat=2)5 5 31 1 4輸出area=7.154544;perimeter=13.0These

22、sides do not corresp ond to a valid tria ngleimport java.util.Sca nner;public class Test30003 public static void main(String args)int ri, repeat;float a, b, c, area, perimeter, s;Scanner in=new Sca nn er(System.i n);repeat=i n.n extI nt();for(ri=1; ric&a+cb&b+ca)perimeter=a+b+c;s = (a+b+c)/2.0f;area

23、 =(float)Math.sqrt(s*(s-a)*(s-b)*(s-c);System.out.pri ntl n(area=+area+;perimeter=+perimeter);sides do not correspond to a valid trian gle);16.test30004 判斷數(shù)的符號/*輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:輸入整數(shù) x,若 x 大于 0, y=1 ;若 x 等于 0, y=0;否則,y=-1,最后輸出 y。 例:括號內(nèi)是說明輸入3 (repeat=3)2-8 0輸出1(x=2時 y=1)-1 (

24、x=-8 時 y=-1)0(x=0時 y=0)*/ import java.util.Sca nner;public class Test30004public static void main(String args) int ri, repeat;int x, y=0;Scanner in=new Sca nn er(System.i n); repeat=i n.n extI nt();for(ri=1; ri0)y=1;else if (x=0)y=0;else if (x0)y=-1;System.out.pri ntl n(-y);elseSystem.out.pri ntln(T

25、hese17.test30005 計算個人所得稅程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 輸入一個職工的月薪 salary,輸出應交的個人所得稅tax = rate * (salary-850)當 salary = 850 時, 當850 salary = 1350 當 1350 salary = 2850 當 2850 salary = 5850 當 5850 salary 時, 例:括號內(nèi)是說明輸入5 (repeat=5)1010.8732098.7680040102850 輸出tax=8.04tax=6249.75t

26、ax=0.0 tax=474.0tax=200.0 import java.util.Sca nner;public class Test30005 public static void main( Stri ng args) int ri, repeat;float rate, salary, tax;Scanner in=new Sca nn er(System.i n); repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+)salary=in.n extFloat();/* */if(salary=850)tax =0;else if(sala

27、ry=1350) rate=0.05f;tax=rate*(salary-850);else if(salary=2850)次下列運算:tax。rate = 0%;時,rate = 5%;rate=0.10f;tax=rate*(salary-850);else if(salary=5850)rate=0.15f;tax=rate*(salary-850);elserate=0.20f;tax=rate*(salary-850);System.out.pri ntln (tax=+(i nt)(tax*100+0.5)/100.0);18.test30006顯示水果的價格/*以下 4 種水果的

28、單價分別是3.00 元/公斤,2.50 元/公斤,4.10 元/公斤,10.20 元/公斤。1 apples2 pears3 oran ges4 grapes輸入水果的編號,輸出該水果的單價。如果輸入不正確的編號,顯示單價為0。例:括號內(nèi)是說明輸入1 (repeat=1)3(oranges 的編號)輸出1 apples2 pears3 oran ges4 grapesprice=4.1*/import java.util.Sca nner;public class Test30006public static void main(String args)int ri, repeat;int c

29、hoice;float price;Scanner in=new Sea nn er(System.i n);repeat=i n.n extl nt();for(ri=1; ri=A &ch=a&ch=z)ch=(char)(ch-32);System.out.pri nt(ch); ch=(char)System.i n. read();20.test40001 求 1+1/2+1/3+ 1/n/*程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算: 讀入 1個正整數(shù) n(*=100),計算并輸出 1+ 1/2 +

30、1/3 + 例:括號內(nèi)是說明輸入2(repeat=1)210輸出1.52.9289684*/import java.util.Sca nner;public class Test40001 public static void main( Stri ng args) int ri, repeat;int i, n;float sum;Scanner in=new Sca nn er(System.i n);repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+)n=in.n ext In t();/* */sum=0;for(i=1;i=n ;i+)su

31、m=sum+(float)1/i;1/n 。System.out.pri ntln( sum);21.test40002 求 n!/*程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:讀入 1 個正整數(shù) n(*=50),計算并輸出 n!。例:括號內(nèi)是說明輸入3(repeat=2)1105輸出1.03628800.0120.0*/ import java.util.Sca nner;public class Test40002 public static void main( Stri ng args) int ri,

32、repeat;int i, n;double fact;Scanner in=new Sca nn er(System.i n); repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+) n=in.n ext In t();/* */fact=1;for(i=1;i=n ;i+)fact=fact*i;System.out.pri ntl n( fact);22.test40003 求 x 的 n 次幕 程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:讀入 1 個正實數(shù) x

33、和 1 個正整數(shù) n(*=50),計算并輸出 x 的 n 次幕。 例:括號內(nèi)是說明輸入2 (repeat=2)1.5 22.0 10輸出2.251024.0import java.util.Sca nner;public class Test40003 public static void main( Stri ng args) int ri, repeat;int i, n;double x, mypow;Scanner in=new Sca nn er(System.i n);repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+)x=in.n ex

34、tDouble();n=in.n ext In t();/* */mypow=1.0;for(i=1;i=n ;i+)mypow=mypow*x;System.out.pri ntln(m ypow);23.test40004 求 1-1/2+1/3-1/4+/*讀入 1 個正整數(shù) n(*=100),計算并輸出 1 1/2 + 1/3 1/4 +的前 n 項和(四舍五入保留小數(shù)4 位)。例:括號內(nèi)是說明輸入2 (repeat=2)103輸出0.64560.8333*/import java.util.Sca nner;public class Test40004 public static v

35、oid main( Stri ng args) int ri, repeat;int i, n, flag;float sum;Scanner in=new Sca nn er(System.i n);repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+)n=in.n ext In t();/* */sum=0;flag=1;for(i=1;i=n ;i+)sum=sum+(float)flag/i;flag=-flag;System.out.pri ntl n( (Io ng)(sum*10000+0.5)/10000.);24.求 1 + 1/3+

36、1/5+1/7+ 程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:讀入 1 個正整數(shù) n(*=100),計算并輸出 1+ 1/3 + 1/5 + 1/7 +的前 n 項和。 例:括號內(nèi)是說明輸入2(repeat=2)103輸出2.1332561.5333334import java.util.Sca nner;public class Test40005 public static void main(String args) int ri, repeat;int i, n, temp;float sum;Scann

37、er in=new Sea nn er(System.i n);repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+)n=in.n ext In t();/* */sum=0;for(i=1;i=n ;i+) sum=sum+1.0f/(2*i-1);System.out.pri ntln( sum);25.求 1-1/3+1/5-1/7+程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:讀入 1 個正實數(shù) eps,計算并輸出 1 1/3 + 1/5 1/7 +,直到最后一項的

38、絕對值小于eps 為止(要求每一項的絕對值均大于等于eps,并以 float 類型輸出數(shù)據(jù))。例:括號內(nèi)是說明輸入2(repeat=2)1E-40.1輸出0.78534820.83492064import java.util.Sca nner;public class Test40006 public static void main(String args) int ri, repeat;int temp, flag; /temp變量干什么用?int i; /自己加上的變量double eps, item, sum;Scanner in=new Sca nn er(System.i n);r

39、epeat=i n.n extI nt();for(ri=1; ri=eps)sum=sum+item;item=(double)flag/(2*i+1); flag=-flag;i+;System.out.pri ntln( (float)sum);26.攝氏溫度和華氏溫度轉換表/*程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:輸入 2 個整數(shù) begin 和 end,分別代表攝氏溫度的起止值,輸出該范圍內(nèi)攝氏溫度C 和華氏溫度 F 的轉換表。F = 32 + C * 9 / 5輸出語句:System.out.p

40、ri ntl n( c+t+f);例:括號內(nèi)是說明輸入1 (repeat=1)5 7輸出Celsius Fahre nheit541642744*/ import java.util.Sca nner;public class Test40007 public static void main(String args) int ri, repeat;int begi n, c, end, f;Scanner in=new Sca nn er(System.i n); repeat=i n.n extl nt();for(ri=1; ri=repeat; ri+)begi n=in.n ext

41、In t();end=in.n ext In t();System.out.pri ntln (Celsius Fahre nheit);/* */for(i nt i=begi n;i=e nd;i+)c=i;f= 32 + i * 9 / 5;System.out.pri ntln( c+t+f);27.求奇數(shù)和/*程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算:讀入一批正整數(shù)(以零或負數(shù)為結束標志),求其中的奇數(shù)和。例:括號內(nèi)是說明輸入 22 (repeat=2)I 3 90 7 08 7 4 3 70 5 6

42、 101 -1輸出II116*/import java.util.Sca nner;public class Test40008 public static void main(String args) int ri, repeat;int x, sum;Scanner in=new Sca nn er(System.i n); repeat=i n.n extl nt();for(ri=1; ri0)if (x%2!=0) sum=sum+x;x=in.n ext In t();System.out.pri ntln( sum);28.求最大值/*程序填空,不要改變與輸入輸出有關的語句。輸入

43、一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算: 輸入一個正整數(shù) n,再輸入 n 個整數(shù),輸出最大值。例:括號內(nèi)是說明 輸入3 (repeat=3)4 2 123 -100 04 9 1-1 83 1 3 5輸出1235*/ import java.util.Sca nner;public class Test40009 public static void main( Stri ng args) int ri, repeat;int i , max, n, x;Scanner in=new Sca nn er(System.i n); repeat=i n.

44、n extI nt();for(ri=1; ri=repeat; ri+) n=in.n ext In t();/* */max=i n.n extI nt();for(i=1;i n ;i+)x=in.n extI nt(); if(max=x) max=x;System.out.pri ntln( max);29. 求整數(shù)的位數(shù)以及各位數(shù)之和/*程序填空,不要改變與輸入輸出有關的語句。輸入一個正整數(shù) repeat (0repeat10) ,做 repeat 次下列運算: 輸入一個整數(shù),輸出它的位數(shù)以及各位數(shù)之和。例:括號內(nèi)是說明輸入4(repeat=4)123456 -100 -1 99輸

45、出number=6, sum=21 (123456 的位數(shù)是 6,各位數(shù)之和是 21) number=3, sum=1 (-100的位數(shù)是 3,各位數(shù)之和是 1)number=1, sum=1 (-1 的位數(shù)是 1,各位數(shù)之和是 1) number=2, sum=18 (99 的位數(shù)是 2,各位數(shù)之和是 18)*/ import java.util.Sca nner;public class Test40010 public static void main( Stri ng args)int ri, repeat;int nu mber, sum,n;Scanner in=new Sca n

46、n er(System.i n);repeat=i n.n extI nt();for(ri=1; ri=repeat; ri+)n=in.n ext In t();if(*0)n=-n;nu mber=(Stri ng.valueOf( n).le ngth();int i;sum=0;for(i=0;i nu mber;i+)sum=sum+n%10;n=n/10;System.out.println(number=+number+, sum=+sum);30. 求 2/1+3/2+5/3+8/5+ /*輸入一個正整數(shù)repeat (0repeat10) ,做 repeat 次下列運算: 輸入一個正整數(shù) n,輸出2/1+3/2+5/3+8/5 +. 的前 n 項之和,保留 4 位小數(shù)(不足 4 位時,不必用 0 填滿 4 位)。(該序列從第 2 項起,每一項的分子是前一項分子與分母的和,分母是前一項的分子) 例:括號內(nèi)是說明輸入3 (r

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論