c++编译中提示错误多多

来源:百度知道 编辑:UC知道 时间:2024/06/05 11:16:36
#include<stdio.h>

typedef struct Complex

{

float shi;

float xu;

}Complex;

void CreatComplex(Complex &c,float a,float b)

{

c.shi=a;

c.xu=b;

}

void AddComplex(Complex &sum,Complex c1,Complex c2)

{

sum.shi=c1.shi+c2.shi;

sum.xu=c1.xu+c2.xu;

}

void ChaComplex(Complex &cha,Complex c1,Complex c2)

{

cha.shi=c1.shi-c2.shi;

cha.xu=c1.xu-c2.xu;

}

void JiComplex(Complex &ji,Complex c1,Complex c2)

{

ji.shi=c1.shi*c2.shi-c1.xu*c2.xu;

ji.xu=c1.shi*c2.xu+c1.xu*c2.shi;

}

void Print(Complex c)

{

if(c.shi==0.0)

printf("%5.2f\n",c.shi);

else

printf("%5.2f+i%5.2f\n",c.shi,c.xu);

你看看的文件扩展名是 .c还是.cpp,若是.c的话,我下面改得可以运行的,若是.cpp,不需要改,在VC++ 6.0中可直接运行
.c我改的下面的程序也可以在VC++ 6.0中可直接运行

改好了!C语言是不是支持引用&,好像不是支持的,C++中支持这种用法,你用的是纯的C语言,
#include<stdio.h>

typedef struct Complex

{

float shi;

float xu;

}Complex;

void CreatComplex(Complex *c,float a,float b) //引用改为指针

{

c->shi=a; //指针用指向运算符->

c->xu=b; //指针用指向运算符->

}

void AddComplex(Complex *sum,Complex c1,Complex c2) //引用改为指针

{

sum->shi=c1.shi+c2.shi; //指针用指向运算符->

sum->xu=c1.xu+c2.xu; //指针用指向运算符->

}

void ChaComplex(Complex *cha,Complex c1,Complex c2) //引用改为指针

{

cha->shi=c1.shi-c2.shi; //指针用指向运算符->

cha->xu=c1.xu-c2.xu; //指针用指向运算符->

}

void JiComplex(Complex *ji,Complex c1,Complex c2) //引用改为指针

{

ji->shi=c1.sh