《浙大《Java语言程序设计》编程答案4》由会员分享,可在线阅读,更多相关《浙大《Java语言程序设计》编程答案4(9页珍藏版)》请在金锄头文库上搜索。
1、实验 5 分支结构程序的设计程序填空,不要改变与输入输出有关的语句。一、显示两级成绩输入一个正整数repeat (Orepeat10),做repeat次下列运算:输入一个学生的数学成绩,如果它低于60,输出“Fail”,否则,输出“Pass”。 输出使用 Sys tem.o ut .pri ntln (Pass);及 Sys tem.o ut .pri ntln( Fail);例:括号内是说明输入2 (repeat=2)60 59输出PassFailimport java.util.Scanner;public class Test30001public static void main(St
2、ring args)int ri, repeat;int mark;Scanner in=new Scanner(System.in); repeat=in.nextInt();for(ri=1; ri=repeat; ri+) mark=in.nextInt();/*/if (mark60) System.out.println(Fail);elseSystem.out.println(Pass); 二、找最小值输入一个正整数repeat (0repeat10),做repeat次下列运算: 输入四个整数,输出其中的最小值。例:括号内是说明输入3 (repeat=3)12 6 1 9010 4
3、0 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.Scanner;public class Test30002 public static void main(String args) int ri, repeat;int a, b, c, d, min;Scanner in=new Scanner(System.in); repeat=in.nextInt();for(ri=1; r
4、ib) min=b;if(minc) min=c;if(mind) min=d;System.out.println(min is +min); 三、求三角形的面积和周长输入一个正整数repeat (Orepeat10),做repeat次下列运算:输入三角形的三条边a, b, c,如果能构成一个三角形,输出面积area和周长perimeter;否则,输出“These sides do not correspond to a valid triangle”。在一个三角形中,任意两边之和大于第三边。三角形的面积计算公式:area*area = s(s-a)(s-b)(s-c)其中:s = (a+b
5、+c)/2输出代码: System.out.println(area=+(int)(area*100+0.5)/100.+;perimeter=+(int)(perimeter*100+0.5)/100.); System.out.println(These sides do not correspond to a valid triangle);例:括号内是说明输入2 (repeat=2)5 5 31 1 4 输出area=7.15;perimeter=13.0These sides do not correspond to a valid triangleimport java.util.
6、Scanner;public class Test30003 public static void main(String args)int ri, repeat;float a, b, c, area, perimeter, s;Scanner in=new Scanner(System.in);repeat=in.nextInt();for(ri=1; ric&a+cb&b+ca) /注意:复合条件的正确写法 s=(a+b+c)/2; area=(float)Math.sqrt(s*(s-a)*(s-b)*(s-c);perimeter=a+b+c;System.out.println(a
7、rea=+(int)(area*100+0.5)/100.+;perimeter=+(int)(perimeter*100+0.5)/100.);elseSystem.out.println(These sides do not correspond to a valid triangle);四、判断数的符号输入整数X,若X大于0, y=1 ;若乂等于0, y=0;否则,y=T,最后输出y。例:括号内是说明输入3 (repeat=3)2 -8 0输出1(x=2 时 y=1)-1(x=-8 时 y=-l)(x=0 时 y=0)import java.util.Scanner;public cla
8、ss Test30004public static void main(String args) int ri, repeat;int x, y;Scanner in=new Scanner(System.in); repeat=in.nextInt();for(ri=1; ri0) y=1;else if(x=0) y=0; /注意:=是赋值运算符,=才是比较相等的运算符else y=-1;System.out.println(y); 五、计算个人所得税输入一个正整数repeat (Orepeat10),做repeat次下列运算: 输入一个职工的月薪salary,输出应交的个人所得税tax。
9、tax = rate * (salary-850)当 salary = 850 时,rate = 0%;当 850 salary = 1350 时,rate = 5%;当 1350 salary = 2850 时,rate = 10%;当 2850 salary = 5850 时,rate = 15%;当 5850 salary 时,rate = 20%;例:括号内是说明输入5 (repeat=5)1010.8732098.7680040102850输出tax=8.04tax=6249.75tax=0.0tax=474.0tax=200.0 import java.util.Scanner;p
10、ublic class Test30005 public static void main(String args)int ri, repeat;float rate, salary, tax;Scanner in=new Scanner(System.in); repeat=in.nextInt();for(ri=1; ri=repeat; ri+) salary=in.nextFloat();/*/if(salary=850) /注意:实现分段函数时对条件的简化 rate=0;else if(salary=1350) rate=0.05f;else if(salary=2850) rate
11、=0.1f;else if(salary=5850) rate=0.15f;else rate=0.2f;tax=rate*(salary-850);System.out.println(tax=+(int)(tax*100+0.5)/100.0);六、显示水果的价格输入一个正整数repeat (Orepeat10),做repeat次下列运算:以下4种水果的单价分别是3.00元/公斤,2.50元/公斤,4.10元/公斤,10.20元/公斤1 apples2 pears3 oranges4 grapes 输入水果的编号,输出该水果的单价。如果输入不正确的编号,显示单价为0。例:括号内是说明输入1
12、 (repeat=1)3 (oranges 的编号)输出1 apples2 pears3 oranges4 grapesprice=4.1 import java.util.Scanner;public class Test30006public static void main(String args) int ri, repeat;int choice;float price;Scanner in=new Scanner(System.in); repeat=in.nextInt();for(ri=1; ri=repeat; ri+)System.out.println(1 apples)
13、;System.out.println(2 pears);System.out.println(3 oranges);System.out.println(4 grapes); choice=in.nextInt();/*/switch(choice) case 1:price=3.0f;break;case 2:price=2.5f;break;case 3:price=4.1f;break;case 4:price=10.2f;break;default: price=0; System.out.println(price=+price); 七、字母转换 输入一批以问号“?”结束的字符,对
14、“?”以前的每一个字符,如果它是大写字母,输出相应的小写字母;如果它是 小写字母,输出相应的大写字母;否则,原样输出。例: 输入 F=y? 输出 f=Y import java.io.*;public class Test30007 public static void main(String args)throws IOException char ch;ch=(char)System.in.read();while(ch!=?)/*/if(A=ch&ch=Z) ch+=32;else if(a =ch&ch=z) /此处必须使用if结构的嵌套ch-=32;System.out.print(ch); ch=(