import java.util.Scanner;
import java.io.*;
public class ComplexNumber{
 private float real;        private float image;        public ComplexNumber(float a, float b)
        {         this.real=a;         this.image=b;         }

    public static String readString()
    {
        //从键盘读取字符串
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in),1);
        String s1="";
        try{
            s1=br.readLine();
        }catch(IOException ex){
            System.out.println(ex);
       
        return s1;
        }
   }
    public static float readFloat(){
        //字符串转换为浮点数
        return Float.parseFloat(readString());
    }
    
    
    
    public ComplexNumber()
    {
     real=0.0;
     image=0.0;
    }
  
    public add(ComplexNumber c)
    {
     ComplexNumber result=new ComplexNumber(this.real+c.real,this.image+c.image);         return result;
    }
    public sub(ComplexNumber c)
    {
     ComplexNumber result=new ComplexNumber(this.real-c.real,this.image-c.image);
     return result;
    }
    public mul(ComplexNumber c)
    {
     ComplexNumber result=new ComplexNumber(this.real*c.real-this.image*c.image,                                      this.real*c.image+this.image*c.real);         return result;
    }
    public div(ComplexNumber c)
    {
     ComplexNumber result=new ComplexNumber((this.real*c.real+this.image*c.image)/(c.real*c.real+c.image*c.image),                                      (this.image*c.real+this.real*c.image)/(c.real*c.real+c.image*c.image));
          return result;
    }
    public String toString(){         String ComplexNunber=new String(this.real+"+"+this.imaginary+"i");         return ComplexNunber;      }
    }
  
public class void main()(String[] args )
    {
     ComplexNumber a=new ComplexNumber();
     ComplexNumber b=new ComplexNumber();
     System.out.println("Enter the first ComplexNumber");
    
     a.real=ComplexNumber.readFloat();
     a.image=ComplexNumber.readFloat();
     System.out.println("Enter the second ComplexNumber");
    
     b.real=ComplexNumber.readFloat();
     b.image=ComplexNumber.readFloat();
     System.out.println((a.add(b)).toString());        System.out.println((a.sub(b)).toString());        System.out.println((a.mul(b)).toString());     System.out.println((a.div(b)).toString());
     }
    
   

解决方案 »

  1.   

    public sub(ComplexNumber c)   public ComplexNumber sub(...)
      

  2.   

    你都写了return result了为啥不设定返回值
      

  3.   

    还有,你的代码很多错误,"public class void main()(String[] args )”这是啥?
      

  4.   

    现在 改好了,还有一个问题    public static String readString()
       {
       //从键盘读取字符串
       BufferedReader br=new BufferedReader(new InputStreamReader(System.in),1);
       String s1="";
       try{
       s1=br.readLine();
       }catch(IOException ex){
       System.out.println(ex);
         
      return s1;
       }
       }
     这里 编译结果 提示 缺少返回语句。。