先上代码:
struct complex
{
double a,b;
};
//判断是否收敛
int isConvergent(double x,double y){
int i;double a,b;
struct complex Z;
Z.a=Z.b=0.0;
for(i=1;i<=666;++i){
a=Z.a;b=Z.b;
Z.a=a*a-b*b;Z.b=2*a*b;
Z.a+=x;Z.b+=y;
if(Z.a*Z.a+Z.b*Z.b>4)return i;
}
return 0;
}
我的问题原因是声明Z时没加struct
这几个字母,
没加前: complex Z;
加了后:struct complex Z;
至于其它文章说的关于.
和->
的使用区别:
如果你声明时为struct complex *Z;
,那么应该使用Z->a
或(*Z).a
来进行调用;
如果如上面代码一样,则可以直接用.
来进行调用。