亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

學完Java第一季,交作業了!??!請檢查錯誤!!!

學完Java第一季,交作業了?。?!請檢查錯誤!!!

慕慕夕 2016-08-30 20:40:30
//導入java.util包,使用Scanner工具類 import?java.util.Scanner; public?class?Test1?{ ?public?static?void?main(String[]?args){ ??Scanner?input=new?Scanner(System.in);//創建Scanner對象 ?? ??System.out.print("請輸入第一個數:"); ??int?a=input.nextInt(); ?? ??System.out.print("請輸入第二個數:"); ??int?b=input.nextInt(); ?? ??System.out.print("請輸入第三個數:"); ??int?c=input.nextInt(); ?? ??int?max=a;//假定a是最大的數 ?? ??if(b>max||c>max){//如果b、c有一個比假定最大的a大,判斷b、c大小。否則a就是最大 ??? ???if(b>c){ ???? ????max=b;//b比c大替換假定a ??? ???}else{ ???? ????max=c;//c比b大替換假定a ???} ??} ??System.out.print("最大的數:"+max); ?} } /* ?*??題目:給定3個數a,b和c,輸出最大的數 ?*?? ?*???*****如果是很多個數怎么辦???***** ?*/*************************************************import?java.util.Scanner;//導入java.util包,使用Scanner工具類 public?class?Test2?{ ?public?static?void?main(String[]?args){ ??Scanner?input=new?Scanner(System.in); ??System.out.print("請輸入通話時間(秒):"); ??int?time=input.nextInt(); ??int?jiao=0;//存儲應收費多少角,方便轉換成元 ??double?yuan=0;//存儲應收費多少元 ?? ??if(time<=180){//3分鐘內0.2元 ???yuan=0.2; ??}else?if(time>180){ ??? ???if(time%60!=0){//若是不是整分鐘數,不足一分鐘按一分鐘算。 ????jiao=(int)(time/60-3+1)*1+2;//為方便轉換,放大以角計費 ????yuan=(double)jiao/10;//講角轉換為元 ???}else{//若正分鐘數 ????yuan=(time/60-3)*0.1+0.2; ???} ??} ??System.out.print("應該收費"+yuan+"元"); ?} } /*? ?*?某電信公司的市內通話費計算標準如下: ?*?三分鐘內0.2元,三分鐘后每增加一分鐘增加0.1元, ?*?不足一分鐘的按一分鐘計算。要求編寫程序, ?*?給定一個通話時間(單位:秒), ?*?計算出應收費金額。 ?*/*************************************************import?java.util.Scanner; public?class?Test3?{ ?public?static?void?main(String[]?srgs){ ??Scanner?input=new?Scanner(System.in); ??System.out.print("請輸入形式公里數:"); ??double?km=input.nextDouble(); ??System.out.print("請輸入等待時間(秒):"); ??int?time=input.nextInt(); ??double?sumMoney=0; ??if(km<=3.0){//3公里以內 ???if(time<150){//3公里以內,等待2.5鐘內,收費10元 ????sumMoney=10; ???}else{//3公里以內,等待2.5鐘外,收費10元加等待時間加費 ????sumMoney=(int)(10+(time/150*1)); ???} ??}else?if(km<=15.0){//15公里內 ???if(time<150){//15公里內,等待150秒內,起步價+3到15每公里2元 ????sumMoney=(int)(10+((km-3)*2*1)); ???}else{//15公里內,等待150秒內,起步價+3到15每公里2元+等帶時間加費 ????sumMoney=(int)10+((km-3)*2*1)+(time/150*1); ???} ??}else{//15公里以外, ???if(time<150){//15公里以外,等150秒內。起步價+3到15每公里2+15公里外每公里3元 ????sumMoney=(int)(10+((15-3)*2*1)+((km-15)*3)); ???}else{//15公里以外,等150秒內。起步價+3到15每公里2+15公里外每公里3元+等時費 ????sumMoney=(int)(10+((15-3)*2*1)+((km-15)*3)+(time/150*1)); ???} ??} ??System.out.print("應收車費:"+sumMoney+"元。"); ?} } /*? ?*某市的出租車計費標準為: ?*3公里以內10元, ?*3公里以后每加0.5公里加收1元; ?*每等待2.5分鐘加收1元; ?*超過15公里的每公里加收3元。 ?*要求編寫程序, ?*對于任意給定的里程數(單位:公里) ?*和等待時間(單位:秒)計算出應付車費, ?*車費直接截去小數位,只取整數。*************************************************import?java.util.Scanner; public?class?Test4?{ ?public?static?void?main(String[]?args){ ??Scanner?input=new?Scanner(System.in); ??System.out.print("輸入某個年份:"); ??int?year=input.nextInt(); ??if(year%4==0){ ???if(year%100==0){ ????System.out.println(year+"不是閏年");? ???} ???System.out.println(year+"是閏年"); ??}else?if(year%400==0){ ???System.out.println(year+"是閏年"); ??}else{ ???System.out.println(year+"不是閏年"); ??} ?} } /* ?*?編寫程序,判斷給定的某個年份是否是閏年。? ?*?閏年的判斷規則如下:?? ?*(1)若某個年份能被4整除但不能被100整除,則是閏年。 ?*(2)若某個年份能被400整除,則也是閏年 ?*/*************************************************public?class?Test5?{ ?public?static?void?main(String[]?args){ ??int?sum=0; ??for(int?i=1;i<100;i++){ ???sum=sum+i; ??} ??System.out.print("?1+3+5+7+……+99?的和:"+sum); ?} } //編寫程序求?1+3+5+7+……+99?的和值*************************************************public?class?Test6?{ ?public?static?void?main(String[]?args){ ??System.out.println("1-100之間所有能被7整除的偶數:"); ??for(int?i=1;i<=100;i++){ ???if(i%2==0){ ????if(i%7==0){ ?????System.out.print(i+","); ????} ???} ??} ?} } //編寫程序輸出1-100之間所有能被7整除的偶數。*************************************************public?class?Test7?{ ?public?static?void?main(String[]?args){ ?? ??int?num1=0;//存儲千位數 ??int?num2=0;//存儲百位數 ??int?num3=0;//存儲十位數 ??int?num4=0;//存儲個位數 ?? ?????System.out.println("滿足千位>百位>十位>個位且個位等于千+百+十的和的所有四位數:"); ? ?????for(int?num=1000;num<10000;num++){//循環遍歷1000到9999所有的s四位數 ?? ??????num1=(int)num/1000;//四位數除以1000強制類型轉換得出千位 ??????num2=(int)(num-num1*1000)/100;//四位數-千位乘以1000除以100,強制類型轉換得出百位 ??????num3=(int)(num-num1*1000-num2*100)/10;//同上 ??????num4=(int)num-num1*1000-num2*100-num3*10;//同上 ?? ??????if(num1>num2){//判斷千位大于百位 ?????????if(num2>num3){//判斷百位大于十位 ????????if(num3>num4&&num1==num4+num2+num3){//判斷十位大于個位且千位=個+十+百位 ???? ?????????System.out.println(num+";"); ????? ????????} ???????} ??????} ??} ?} } /* ?*?求所有滿足如下條件的四位數: ?*?千位上的數字大于百位數字, ?*?百位數字大于十位數字, ?*?十位數字大于個位數字, ?*?并?且千位數字是其他三位數字的和。 ?*/*************************************************import?java.util.Scanner; public?class?Test8?{ ? ?public?static?void?main(String[]?args){ ?? ??Scanner?input?=?new?Scanner(System.in); ??System.out.print("請任意輸入第一個正整數:"); ??int?num1=input.nextInt(); ??System.out.print("請任意輸入第二個正整數:"); ??int?num2=input.nextInt(); ?? ??if(num1>=0&&num2>=0){//判斷兩個數都為正整數 ??? ???if(num1>num2){//判斷第一個數大還是第二個數大 ???? ????for(int?i=num2;i<=num1;i++){//循環遍歷兩數之間的所有數 ????? ?????int?j=(int)Math.sqrt(i);//對兩數之間的所有數開方,強制類型轉換 ????? ?????if(j*j==i){//判斷還原平方還等于原數,正確輸出 ?????? ??????System.out.println(i+";");//輸出;兩數之間完全平方數 ?????? ?????} ????} ???}else{//第二個數大于第一個數時 ????? ????for(int?i=num1;i<=num2;i++){//同上第一個數大于第二個數 ?????? ?????int?j=(int)Math.sqrt(i); ?????? ?????if(j*j==i){ ??????? ??????System.out.println(i+";"); ??????? ?????} ????} ???} ??}else{//提示輸入的不是正整數 ???System.out.println("輸入錯誤!請輸入正整數?。?!"); ??} ?} } /* ?*給定兩個任意的正整數, ?*求它們之間的所有完全平方數, ?*完全平方數是指這個數是??某個整數的平方, ?*例如?16,25,36等都是完全平方數。? ?* ?*實現思路: ?*1、判斷這兩個數是正整數 ?*2、比較這兩個數的大小 ?*3、循環遍歷這兩個數之間的所有數 ?*4、兩數之間所有數?開平方, ?*(y?=?Math.sqrl(x);y得到的就是x的開方數) ?*5、判斷開放后為整數 ?*6、輸出所有開平方沒有余數的數字 ?*/*************************************************import?java.util.Scanner; public?class?Test9?{ ?public?static?void?main(String[]?args){ ??Scanner?input=new?Scanner(System.in); ??System.out.print("求前幾項和:"); ??int?term=input.nextInt(); ??int?sum=0;//存儲相加的和 ????? ?????for(int?n=1;n<term*2;n++){//因為相加有規律質數,所以term*2 ?????? ??????if(n%2!=0){//判斷是否是質數 ???????sum=sum+n;//質數累加求和 ??????} ?????} ?????if(term%2!=0){//判斷前幾項和是奇數還是偶數, ???sum=sum-1;//根居推斷求前幾項和是奇數減1,偶數不加不減 ??} ?????System.out.println("前"+term+"項的和為:"+sum); ?} } /* ?*編寫程序求下列多項式的前50項的和: ?*1-1/3+1/5-1/7+1/9-……?? ?*/*************************************************import?java.util.Scanner; public?class?Test10?{ ?public?static?void?main(String[]?args){ ??Scanner?input=new?Scanner(System.in); ??System.out.print("輸入一個整數:"); ??int?num=input.nextInt(); ??int?avg=?0; ?? ??do{ ???avg=avg*10+num%10; ???num=num/10; ??}while(num!=0); ??System.out.println("倒過來"+avg); ?} } /* ?*?給定一個整數, ?*?把它的各位數字倒排過來形成一個新的整數 ?*?例如:給定12345???輸出54321??;給定?9870??輸出789? ?*/*************************************************public?class?Test11?{ ? ?public?static?void?main(String[]?srgs){ ?? ??for(int?i=1;i<=9;i++){ ??? ???for(int?j=1;j<=i;j++){ ???? ????System.out.print(j+"*"+i+"="+j*i+"??"); ???} ??? ???System.out.println(); ??} ?} } //請編寫程序輸出九九乘法表。*************************************************沒了?。?!我自己知道有繁瑣,不足的地方,但是自己不知道怎么改了?。?!好幾個程序都出現了小黃嘆號,但是都能運行,不知道怎么回事?。?!
查看完整描述

2 回答

已采納
?
千湖之夢

TA貢獻10條經驗 獲得超7個贊

不夠嚴謹,外部輸入的參數任何都有可能,所以強轉int類型大部分時候時會出錯的,至少需要捕獲異常。

查看完整回答
反對 回復 2016-08-30
  • 慕慕夕
    慕慕夕
    對是這樣什么都可以輸入,比如要整數,我手欠過輸入小數,報錯了?。。〉悄阏f的捕獲異常,Java第一季沒說啊。
?
黑女2008

TA貢獻75條經驗 獲得超32個贊

太長沒看,小黃嘆號是警告,不影響使用,但是盡量不要出現警告。例如像變量聲明了沒有使用,就會警告,可以把沒使用的刪除。

查看完整回答
反對 回復 2016-08-30
  • 2 回答
  • 1 關注
  • 2181 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號