资源描述
实验4 顺序结构程序的设计
1. 程序填空题,不要改变与输入输出有关的语句。
20002 求平方根
输入1个实数x,计算并输出其平方根。
例:
输入
1.21
输出
The square root of 1.21 is 1.1
import java.io.*;
import java.util.Scanner;
public class Test20002{
public static void main(String args[]){
double x, root;
Scanner in=new Scanner(System.in);
x=in.nextDouble();
/*------------------*/
root=Math.sqrt(x);
System.out.println("The square root of "+x+" is "+root);
}
}
20005 数字加密
输入1个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将第1位和第3位上的数字互换,第2位和第4位上的数字互换,组成加密后的新数。
例:括号内是说明
输入
1257
输出
The encrypted number 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; //或 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 encrypted number is "+newnum);
}
}
20006 大写字母转换成小写字母
输入一个大写英文字母,输出相应的小写字母。
例:
输入
G
输出
g
import 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);
}
}
20008 计算存款利息
输入存款金额 money、存期 year 和年利率 rate,根据下列公式计算存款到期时的利息 interest(税前),输出时保留2位小数。
interest = money(1+rate)^year - money
输入输出示例:括号内为说明
输入
1000 3 0.025 (money = 1000, year = 3, rate = 0.025)
输出
interest = 76.89
import java.util.Scanner;
public class Test20008 {
public static void 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;
//注意:指数运算没有运算符,应使用数学类的方法pow()
System.out.println("interest = "+ (int)(interest*100+0.5)/100.0);
}
}
20010 计算两个数的和、差、积、商与余数
输入2个整数 num1 和 num2,计算并输出它们的和、差、积、商与余数。
输入输出示例:括号内是说明
输入
5 3 (num1=5,num2=3)
输出
5+3=8
5-3=2
5*3=15
5/3=1
5%3=2
import java.util.Scanner;
public class Test20010{
public static void main(String args[]){
int num1,num2;
Scanner in=new Scanner(System.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));
//注意:计算结果的表达式直接放在输出语句中,要加上一对( )
}
}
20012 计算x的平方 (提示:注意输出格式)
输入x,计算x的平方y。并分别以"y=x*x"和"x*x=y"的形式输出 x 和 y 的值。
输入输出示例:
输入:
3
输出:(输出中不能出现空格)
9=3*3
3*3=9
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);
}
}
2. 编程题
20013 编程:输出四门课的平均分
编程,运行程序后输入4门课成绩(整数),计算并按示例格式输出平均分。
说明:
1)源程序中不得出现package关键字;
2)程序中的第一个大括号“{”必须位于类名所在行。
3)类名与变量名由编程者自取。
4)指明为整数或整数的数据,不要用浮点类型。
输入输出示例:括号内是说明
输入
68 75 91 87
输出(输出中无空格,行尾换行)
average=80.25
import java.util.Scanner;
public class Test20013 {
public static void main(String []args){
int c1,c2,c3,c4;
double ave; //也可以使用float类型
Scanner in=new Scanner(System.in);
c1=in.nextInt();
c2=in.nextInt();
c3=in.nextInt();
c4=in.nextInt();
ave=(c1+c2+c3+c4)/4.0;
System.out.println("average="+ave);
}
}
20014 编程:重组一个数字
编程,运行程序后输入1个5位整数,取其第1、3、5位数字组成一个新数,并输出。
说明:
1)源程序中不得出现package关键字;
2)程序中的第一个大括号“{”必须位于类名所在行。
3)类名与变量名由编程者自取。
4)指明为整数或整数的数据,不要用浮点类型。
输入输出示例:括号内是说明
输入
12346
输出
136 (原数字的第1、3、5位分别是1、3、6,所以新数为136)
import java.util.Scanner;
public class Test20014 {
public static void main(String []args){
int num,d1,d3,d5,newnum;
Scanner in=new Scanner(System.in);
num=in.nextInt();
d1=num/10000; //num的第1位
d3=num/100%10; //num的第3位
d5=num%10; //num的第5位
newnum=d1*100+d3*10+d5;
System.out.println(newnum);
//上面两句可合写成:System.out.println(""+d1+d3+d5);
}
}
展开阅读全文