java 题目如图。注:类名必须为Main(M大写)

求圆面积要输入65.2后能输出13355.02的

代码如下:

public class Main {

public static void main(String[] args) {
float pi = 3.14159f;
Scanner input = new Scanner(System.in);
float r = input.nextFloat();
System.out.println((float) (Math.round(r * r * pi * 100)) / 100);
int num = input.nextInt();
String str = num + "";
for (int i = 0; i < 3; i++) {
System.out.println(str.substring(2 - i, 3 - i));
}
}
}

结果如下,绿色的为输入的值:

追问

编译出错

追答java.util.Scanner input = new java.util.Scanner(System.in);

input那句改成这样。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-11-22
import java.util.Scanner;

public class Main {

final static  double PI = 3.14159;

/**
 * 计算园面积
 */
public static void circle() {

double r;
System.out.print("输入圆的半径:");
Scanner s = new Scanner(System.in);
r = s.nextDouble();
double S = PI * r * r;
System.out.println("面积为:" + S);
}

/**
 * 计算个、十、百位值
 */
public static void desc(){
int i;
System.out.print("输入三位数:");
Scanner s = new Scanner(System.in);
i = s.nextInt();
System.out.println(i%10);
System.out.println((i/10)%10);
System.out.println((i/100)%10);
}

public static void main(String[] args) {
circle();
desc();
}
}

追问

面积保留两位小数

第2个回答  2016-11-22


追问

能不能把代码直接贴出来

追答import java.text.NumberFormat;
import java.util.Scanner;

public class Main {
private static int getNum(int i) {
System.out.println(i%10);
return i/10;
}

public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);//控制台(用户)输入
System.out.println("请输入圆的半径:");
double r=scanner.nextDouble();
double per=2*Math.PI*r;
double area=3.14159*r*r;
NumberFormat nf = NumberFormat.getNumberInstance();//NumberFormat及保存小数的方法
nf.setMaximumFractionDigits(2);
System.out.println("周长为:"+(nf.format(per)));
System.out.println("面积为:"+(nf.format(area)));

Scanner sc=new Scanner(System.in);//控制台(用户)输入
System.out.println("请输入一个3位的整数:");
int i = sc.nextInt();
if(i>99 && i<1000){
while(true){
i = getNum(i);
if(i==0){
break;
}
}
}
}
}

相似回答