2014-11-03 58 views
-3

代码我是新手程序员,同时运行下面的代码,我遇到了一个错误:错误运行以下用C

#include<stdio.h> 
#include<math.h> 
int main() 
{ 
    int num=8,a=pow(10,num); 
    printf("\n%d",a); 
} 

当我运行这段代码,为num甚至价值观,我得到它通过不同的值1.我用GNU GCC编译器在CODE::BLOCKS中运行了这个。 以下是我的输出屏幕抓取。

输出屏幕: enter image description here

+1

数值精度:上给予.... – 2014-11-03 04:20:43

+0

你为什么要分配战俘的返回值保持主题() ,这是一个双精度,以int?你为什么要向我们显示num = 8的代码,这显然不是你运行屏幕转储的代码? – GreenAsJade 2014-11-03 04:29:56

回答

0

请参考以下链接: http://linux.die.net/man/3/pow

#include<stdio.h> 
#include<math.h> 
int main() 
{ 
    int num=8; 
    double a=pow(10,num);/* return type of pow() is double not int */ 
    printf("\n%f",a); 
} 
+0

非常感谢 – Scriptonist 2014-11-04 03:10:57