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);
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