import java.io.IOException;
import java.util.Scanner;
abstract class Shape {
abstract double CalcSquare();
abstract double CalcLen();
abstract void SetLenWidth(double l,double w);
abstract void SetRadius(double r);
double len;
double radius;
double width;
}class Circle extends Shape
{
public Circle(double r)
{
radius = r;
}
public void SetRadius(double r)
{
radius =r;
}
public void SetLenWidth(double l,double w)
{}
public double CalcSquare()
{
return 3.14*radius*radius;
}
public double CalcLen()
{
return 2*3.14*radius;
}
}class Rectangle extends Shape
{
public Rectangle(double l,double w)
{
len=l;
width =w;
}
public void SetRadius(double r)
{
}
public void SetLenWidth(double l,double w)
{
len=l;
width =w;
}
public double CalcSquare()
{
return len*width;
}
public double CalcLen()
{
return 2*(len+width);
}
}class Square extends Shape {
public Square(double l)
{
len=l;
}
public double CalcLen()
{
return len*4;
}
public double CalcSquare()
{
return len*len;
}
public void SetRadius(double r)
{
}
public void SetLenWidth(double l,double w)
{
len=l;
width =w;
}
}public class Work {
public static void main(String []args) throws IOException
{
Shape m_circle[] = new Circle[10];
Shape m_square[]=new Square[10];
Shape m_rect[] = new Rectangle[10];
double r,l,w;
double square,len;
double sumsquare[]=new double[3];
double sumlen[]=new double[3];
int i;
Scanner sc = new Scanner(System.in);
for(i=0;i<10;i++)
{
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个圆的半径",null);
r =sc.nextDouble();
m_circle[i]=new Circle(r);
}
for(i=0;i<10;i++)
{
square = m_circle[i].CalcSquare();
len = m_circle[i].CalcLen();
sumsquare[0] += square;
sumlen[0]+=len;
javax.swing.JOptionPane.showMessageDialog(null,"第1类图形圆的面积为:"+square);
javax.swing.JOptionPane.showMessageDialog(null,"第1类图形圆的面积为:"+len);
}
for(i=0;i<10;i++)
{
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个长方形的长",null);
l =sc.nextDouble();
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个长方形的宽",null);
w = sc.nextDouble();
m_rect[i]=new Rectangle(l,w);
}
for(i=0;i<10;i++)
{
square = m_rect[i].CalcSquare();
len = m_rect[i].CalcLen();
sumsquare[1] += square;
sumlen[1] +=len;
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个长方形面积是"+square);
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个长方形的周长"+len);
}
for(i=0;i<10;i++)
{
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个正方形的长",null);
l =sc.nextDouble();
m_square[i]=new Square(l);
}
for(i=0;i<10;i++)
{
square = m_square[i].CalcSquare();
len = m_square[i].CalcLen();
sumsquare[2] += square;
sumlen[2] +=len;
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个正方形面积是"+square);
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个正方形的周长"+len);
}
for(i=0;i<3;i++)
{
javax.swing.JOptionPane.showMessageDialog(null,"圆的总面积是"+sumsquare[0]);
javax.swing.JOptionPane.showMessageDialog(null,"圆的总周长是"+sumlen[0]);
javax.swing.JOptionPane.showMessageDialog(null,"长方形的总面积是"+sumsquare[1]);
javax.swing.JOptionPane.showMessageDialog(null,"长方形的总周长是"+sumlen[1]);
javax.swing.JOptionPane.showMessageDialog(null,"正方形的总面积是"+sumsquare[2]);
javax.swing.JOptionPane.showMessageDialog(null,"正方形的总周长是"+sumlen[2]);
}
}
}
只输入一个圆的半径之后就程序跳出了!!!
谢谢各位大侠啊 在线等
import java.util.Scanner;
abstract class Shape {
abstract double CalcSquare();
abstract double CalcLen();
abstract void SetLenWidth(double l,double w);
abstract void SetRadius(double r);
double len;
double radius;
double width;
}class Circle extends Shape
{
public Circle(double r)
{
radius = r;
}
public void SetRadius(double r)
{
radius =r;
}
public void SetLenWidth(double l,double w)
{}
public double CalcSquare()
{
return 3.14*radius*radius;
}
public double CalcLen()
{
return 2*3.14*radius;
}
}class Rectangle extends Shape
{
public Rectangle(double l,double w)
{
len=l;
width =w;
}
public void SetRadius(double r)
{
}
public void SetLenWidth(double l,double w)
{
len=l;
width =w;
}
public double CalcSquare()
{
return len*width;
}
public double CalcLen()
{
return 2*(len+width);
}
}class Square extends Shape {
public Square(double l)
{
len=l;
}
public double CalcLen()
{
return len*4;
}
public double CalcSquare()
{
return len*len;
}
public void SetRadius(double r)
{
}
public void SetLenWidth(double l,double w)
{
len=l;
width =w;
}
}public class Work {
public static void main(String []args) throws IOException
{
Shape m_circle[] = new Circle[10];
Shape m_square[]=new Square[10];
Shape m_rect[] = new Rectangle[10];
double r,l,w;
double square,len;
double sumsquare[]=new double[3];
double sumlen[]=new double[3];
int i;
Scanner sc = new Scanner(System.in);
for(i=0;i<10;i++)
{
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个圆的半径",null);
r =sc.nextDouble();
m_circle[i]=new Circle(r);
}
for(i=0;i<10;i++)
{
square = m_circle[i].CalcSquare();
len = m_circle[i].CalcLen();
sumsquare[0] += square;
sumlen[0]+=len;
javax.swing.JOptionPane.showMessageDialog(null,"第1类图形圆的面积为:"+square);
javax.swing.JOptionPane.showMessageDialog(null,"第1类图形圆的面积为:"+len);
}
for(i=0;i<10;i++)
{
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个长方形的长",null);
l =sc.nextDouble();
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个长方形的宽",null);
w = sc.nextDouble();
m_rect[i]=new Rectangle(l,w);
}
for(i=0;i<10;i++)
{
square = m_rect[i].CalcSquare();
len = m_rect[i].CalcLen();
sumsquare[1] += square;
sumlen[1] +=len;
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个长方形面积是"+square);
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个长方形的周长"+len);
}
for(i=0;i<10;i++)
{
javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个正方形的长",null);
l =sc.nextDouble();
m_square[i]=new Square(l);
}
for(i=0;i<10;i++)
{
square = m_square[i].CalcSquare();
len = m_square[i].CalcLen();
sumsquare[2] += square;
sumlen[2] +=len;
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个正方形面积是"+square);
javax.swing.JOptionPane.showMessageDialog(null,"第"+(i+1)+"个正方形的周长"+len);
}
for(i=0;i<3;i++)
{
javax.swing.JOptionPane.showMessageDialog(null,"圆的总面积是"+sumsquare[0]);
javax.swing.JOptionPane.showMessageDialog(null,"圆的总周长是"+sumlen[0]);
javax.swing.JOptionPane.showMessageDialog(null,"长方形的总面积是"+sumsquare[1]);
javax.swing.JOptionPane.showMessageDialog(null,"长方形的总周长是"+sumlen[1]);
javax.swing.JOptionPane.showMessageDialog(null,"正方形的总面积是"+sumsquare[2]);
javax.swing.JOptionPane.showMessageDialog(null,"正方形的总周长是"+sumlen[2]);
}
}
}
只输入一个圆的半径之后就程序跳出了!!!
谢谢各位大侠啊 在线等
解决方案 »
- 关于文件与流的问题
- 数值问题
- 为什么设置了jdbc connector的路径,拷到了jre下面,java程序还是无法连接到数据库?谢谢各位大虾了
- 一个关于JFrame和JPanel的问题
- JFreeChart如何实现分布打印?
- 想学java
- 关于Java数组的疑惑
- 请教一个JDBC调用SQL Server 存储过程的问题
- 对WIN98下通过AUTOEXERC.BAT设置CLASSPATH提出的疑问。
- how to use chinese in a jdbc2odbc_bridge program?
- If "String[ ]args" is a valid syntax, why "int( )func" is invalid?
- Eclipse中如何添加库?大侠请进
1).将代码工整化,
2).将代码模块化。
工整化后用CSDN贴代码的功能,这样大家看得更方便些,也好帮你解答!
把输入的地方全改成下边类似的:
for(i=0;i<10;i++)
{
String value=javax.swing.JOptionPane.showInputDialog("请输入第"+(i+1)+"个圆的半径",null);
r =Double.parseDouble(value);
m_circle[i]=new Circle(r); }