为了账号安全,请及时绑定邮箱和手机立即绑定

学完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
  • 慕慕夕
    慕慕夕
    对是这样什么都可以输入,比如要整数,我手欠过输入小数,报错了!!!但是你说的捕获异常,Java第一季没说啊。
?
黑女2008

TA贡献75条经验 获得超32个赞

太长没看,小黄叹号是警告,不影响使用,但是尽量不要出现警告。例如像变量声明了没有使用,就会警告,可以把没使用的删除。

查看完整回答
反对 回复 2016-08-30
  • 2 回答
  • 1 关注
  • 2104 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信