1、实验 4 顺序结构程序的设计程序填空,不要改变与输入输出有关的语句。一、求两个数的和与差。输入整数 a 和 b,计算并输出 a、b 的和与差。例:输入2 -8输出The sum is -6The difference is 10import java.io.*;import java.util.Scanner;public class Test20001public static void main(String args)int a, b, sum, diff;Scanner in=new Scanner(System.in);a=in.nextInt();b=in.nextInt();/*
2、-*/sum=a+b;diff=a-b;System.out.println(“The sum is “+sum);System.out.println(“The difference is “+diff);二、求平方根。输入 1 个实数 x,计算并输出其平方根。例:输入1.21输出The square root of 1.21 is 1.1import java.io.*;import java.util.Scanner;public class Test20002public static void main(String args)double x, root;Scanner in=ne
3、w Scanner(System.in);x=in.nextDouble();/*-*/root=Math.sqrt(x);System.out.println(“The square root of “+x+“ is “+root);三、华氏温度转换为摄氏温度。输入华氏温度 f,计算并输出相应的摄氏温度 c。c = 5/9(f-32).例:括号内是说明输入17.2 (华氏温度)输出The temprature is -8.222222222222223import java.util.Scanner;public class Test20003 public static void main
4、(String args) Scanner in=new Scanner(System.in);double f, c;f=in.nextDouble();/*-*/ c=5.0/9*(f-32); /注意:5/9结果是0System.out.println(“The temprature is “+c); 四、计算旅途时间。输入 2 个整数 time1 和 time2,表示火车的出发时间和到达时间,计算并输出旅途时间。有效的时间范围是 0000 到 2359,不需要考虑出发时间晚于到达时间的情况。例:括号内是说明输入712 1411(出发时间是 7:12,到达时间是 14:11)输出The
5、train journey time is 6 hrs 59 mins.import java.util.Scanner;public class Test20004 public static void main(String args) Scanner in=new Scanner(System.in);int time1, time2, hours, mins;time1=in.nextInt();time2=in.nextInt();/*-*/*计算两个时间之间的小时数和分钟数 */hours=time2/100-time1/100;mins=time2%100-time1%100;/
6、*当计算得到的分钟数为负数时进行如下处理*/ hours=mins0?hours:hours-1;mins=mins0?mins:mins+60;System.out.println(“The train journey time is “+hours+“ hrs “+ mins+“ mins.“); 五、数字加密。输入 1 个四位数,将其加密后输出。方法是将该数每一位上的数字加 9,然后除以 10 取余,做为该位上的新数字,最后将第 1 位和第 3 位上的数字互换,第 2 位和第 4 位上的数字互换,组成加密后的新数。例:括号内是说明输入1257输出The encrypted number
7、is 4601(每一位上的数字加 9 除以 10 取余后,得 0146,交换后得到 4601)import java.util.Scanner;public class Test20005 public static void main(String args) Scanner in=new Scanner(System.in);int number, digit1, digit2, digit3, digit4, newnum;number=in.nextInt();/*-*/*先分离出各位上的数字 */digit1=number/1000;digit2=number/100%10; /或
8、digit2=(number-digit1*1000)/100;digit3=number/10%10; /或 digit3=(number-digit1*1000-digit2*100)/10;digit4=number%10;/*再调整各位上的数字 */digit1=(digit1+9)%10;digit2=(digit2+9)%10;digit3=(digit3+9)%10;digit4=(digit4+9)%10;/*最后组成加密后的新数 */newnum=digit3*1000+digit4*100+digit1*10+digit2;System.out.println(“The e
9、ncrypted number is “+newnum); 六、大写字母转换成小写字母。输入一个大写英文字母,输出相应的小写字母。例:输入G输出gimport java.io.*;public class Test20006 public static void main(String args) throws IOException char ch;ch=(char)System.in.read();/*-*/ ch+=32; /或 ch=(char)(ch+32);System.out.println(ch); 七、计算三门课程的平均成绩。已知某位学生的数学、英语和计算机课程的成绩分别是
10、87 分、72 分和 93 分,求该生 3 门课程的平均分。本题无输入。输出示例:math = 87, eng = 72, comp = 93average = 84public class Test20007 public static void main(String args) int math, eng, comp, average;/*/math=87;eng=72;comp=93;average=(math+eng+comp)/3;System.out.println(“math = “+math+“, eng = “+eng+“, comp = “+comp);System.ou
11、t.println(“average = “+ average);八、计算存款利息。输入存款金额 money、存期 year 和年利率 rate,根据下列公式计算存款到期时的利息 interest(税前),输出时保留 2 位小数。interest = money(1+rate)year - money输入输出示例:括号内为说明输入1000 3 0.025 (money = 1000, year = 3, rate = 0.025)输出interest = 76.89import java.util.Scanner;public class Test20008 public static voi
12、d main(String args) int money, year;double interest, rate;Scanner in=new Scanner(System.in); /*使用 in.nextDouble()和 in.nextInt()输入 double 和 int 型数据*/*/money=in.nextInt();year=in.nextInt();rate=in.nextDouble();interest=money*Math.pow(1+rate), year )- money; /注意:指数运算没有运算符,应使用数学类的方法 powSystem.out.printl
13、n(“interest = “+ (int)(interest*100+0.5)/100.0); /正数保留两位小数九、计算两个数的和、差、积、商与余数。输入 2 个整数 num1 和 num2,计算并输出它们的和、差、积、商与余数。输入输出示例:括号内是说明输入5 3 (num1=5,num2=3)输出5+3=85-3=25*3=155/3=15%3=2import java.util.Scanner;public class Test20010public static void main(String args)int num1,num2;Scanner in=new Scanner(S
14、ystem.in);num1=in.nextInt();num2=in.nextInt();/*-*/System.out.println(num1+“+“+num2+“=“+(num1+num2);System.out.println(num1+“-“+num2+“=“+(num1-num2);System.out.println(num1+“*“+num2+“=“+(num1*num2);System.out.println(num1+“/“+num2+“=“+(num1/num2);System.out.println(num1+“%“+num2+“=“+(num1%num2);十、计算
15、一个 3 位数的各位数字。输入一个 3 位数 n,分别求出 n 的个位数字(c)、十位数字(b)和百位数字(a)的值。输入输出示例:输入:152输出:number152:digit1=2,digit2=5,digit3=1import java.util.Scanner;public class Test20011public static void main(String args)int a,b,c,n;Scanner in=new Scanner(System.in);n=in.nextInt();/*-*/c=n%10;b=(n/10)%10;a=(n/100)%10;System.o
16、ut.println(“number“+n+“:digit1=“+c+“,digit2=“+b+“,digit3=“+a);十一、计算 x 的平方。输入 x,计算 x 的平方 y。并分别以“y=x*x“和“x*x=y“的形式输出 x 和 y 的值。输入输出示例:输入:3输出:(输出中不能出现空格)9=3*33*3=9import java.util.Scanner;import java.util.Scanner;public class Test20012 public static void main(String args)int x,y;Scanner in=new Scanner(System.in);x=in.nextInt();/*-*/y=x*x;System.out.println(y+“=“+x+“*“+x);System.out.println(x+“*“+x+“=“+y);