c++中有关实数和复数的问题
帮你把程序修改过了。现在可以直接输入一个数就行了。注意当输入0的时候要输出1的,你忘了加这个判断。readC()函数其实就是我的复数类的输入运算符重载里面的。
#include
#include
void readC(double& a,double& b)
{
char *p=new char[30];
a=0;
b=0;
cin>>p;
long j=1;
int i=strlen(p)-1;
if (*(p+i)=='i')
{
for (i--;i>=0&&*(p+i)>='0'&&*(p+i)=0&&*(p+i)>='0'&&*(p+i)=0&&*(p+i)>='0'&&*(p+...全部
帮你把程序修改过了。现在可以直接输入一个数就行了。注意当输入0的时候要输出1的,你忘了加这个判断。readC()函数其实就是我的复数类的输入运算符重载里面的。
#include
#include
void readC(double& a,double& b)
{
char *p=new char[30];
a=0;
b=0;
cin>>p;
long j=1;
int i=strlen(p)-1;
if (*(p+i)=='i')
{
for (i--;i>=0&&*(p+i)>='0'&&*(p+i)=0&&*(p+i)>='0'&&*(p+i)=0&&*(p+i)>='0'&&*(p+i)=0&&*(p+i)>='0'&&*(p+i)0)
cerr 0)
{
if (x % 10 == 0)
n ++;
x /= 10;
}
return n;
}
int count(double a,double b)
{
long temp;
if(b==0)
{
temp=(long)a;
if(temp-a==0)
{
cout <<"所输入的数是整数"< 5)
{
cout <<"所输入的数是实数"< 5)
{
return count(temp);
}
else
{
temp=(long)a+1;
return count(temp);
}
}
}
void main()
{
double a,b;
int n;
cout <<"请输入一个数"< 收起