读书人

大姐容小弟问一句这错在哪

发布时间: 2012-12-30 10:43:15 作者: rapoo

各位大哥大姐,容小弟问一句,这错在哪?
#include <math.h>
#include <stdio.h>
int main ()
{
double n,x,y;
for(n=1;n>=1;n++)
{x=pow(1,n)+pow(6,n)+pow(7,n)+pow(17,n)+pow(18,n)+pow(23,n);
y=pow(2,n)+pow(3,n)+pow(11,n)+pow(13,n)+pow(21,n)+pow(22,n);
if(x!=y){ printf("%lf",n);break;}
else continue;
}
return 0;
}
[解决办法]
1. pow函数的参数应当是double数据类型的。
2. n被你声明成了double,一般不要用double类型的变量作为循环变量。所以建议将n声明为int类型的。
然后这样试试:
pow((double)1, (double)n);

读书人网 >C++

热点推荐