计算圆的面积 出错

crttcl 2009-03-25 09:17:34
import java.util.Scanner;

public class yuan {
public static void main(String[] args){
Scanner banjing=new Scanner(System.in);
double area=banjing.nextInt()*banjing.nextInt()*3.14;
System.out.println("area"+area);

}
}
问题,运行时从键盘打入半径可以显示,可是不显示面积运算结果。。为什么?忘高手帮忙
...全文
156 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinchun1234 2009-04-01
  • 打赏
  • 举报
回复
import java.util.Scanner;

public class yuan {
public static void main(String[] args){
System.out.println("请输入所求圆的半径:");
Scanner banjing=new Scanner(System.in);
double r=banjing.nextInt();
double area=r*r*3.14;
System.out.println("area"+area);

}
}

这样就对了,因为你banjing.nextInt()*banjing.nextInt()*3.14相当于执行了两次Scanner的对象banjing,需要两次读取输入的值。换成上面的后r就是个定值了。所以r*r就只需要读取一次输入值。
hoojo 2009-03-25
  • 打赏
  • 举报
回复
楼主的题目很有意义

public static void main(String[] args) {
Scanner banjing = new Scanner(System.in);
//int a = banjing.nextInt();
//double area = a * a * 3.14;
double area = banjing.nextInt() * banjing.nextInt() * 3.14; //如果用上面的也行
//问题所在:第一次 banjing.nextIng() 有值;是你输入的值
//第二次 banjing.nextIng() 无值, 因为banjing 已经去了一次值(banjing.nextInt())
//所有不能再取值了; 这时你需要再输入一次 那么 半径就有值了
//不过值 就是你刚输入的
System.out.println("area"+area);

}

如果 楼主第一次 输入2
回车
// 控制台 没有反应
如果 楼主第一次 输入2
回车
再输入一次 3
回车
结果:area = 2*3*3.14 = 18.84
不错的问题 研究了下
终于看出来了
^_*
hoojo 2009-03-25
  • 打赏
  • 举报
回复

import java.util.*;
public class Test {
public static void main(String args[]) {
System.out.println("请输入所求圆的半径:");
Scanner sc = new Scanner(System.in);
double r = sc.nextDouble();
double area = r * r * Math.PI;
System.out.println("您所求圆的面积为:\t" + area);
}
}

Good
crttcl 2009-03-25
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yxb1986java 的回复:]
import java.util.*;
public class Test {
public static void main(String args[]) {
System.out.println("请输入所求圆的半径:");
Scanner sc = new Scanner(System.in);
double r = sc.nextDouble();
double area = r * r * Math.PI;
System.out.println("您所求圆的面积为:\t" + area);
}
}
[/Quote]
我这个就没有太大区别啊 为什么我这个就不行呢 想弄明白 麻烦告诉一声。。。
yxb1986java 2009-03-25
  • 打赏
  • 举报
回复
import java.util.*;
public class Test {
public static void main(String args[]) {
System.out.println("请输入所求圆的半径:");
Scanner sc = new Scanner(System.in);
double r = sc.nextDouble();
double area = r * r * Math.PI;
System.out.println("您所求圆的面积为:\t" + area);
}
}
crttcl 2009-03-25
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 hufengjiao 的回复:]
输入的是什么
[/Quote]
我输入的是整数啊 1啊 或者2啊 之类的
hufengjiao 2009-03-25
  • 打赏
  • 举报
回复
输入的是什么

81,077

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧