2017-03-27 157 views
0

所以基本上,我需要得到一個輸入並將其平方。某些原因pow()功能不起作用。C電源功能和scanf

#include <stdio.h> 
#include <math.h> 
int main(){ 

    int in, ans; 
    scans("%d", &in); 
    ans = pow(in, 2); 
    printf("answer is: %d", ans); 
    return 0; 

} 

的錯誤是:當你忘了你的程序鏈接到數學庫發生

undefined pow or something like that

+8

答案是,'顯示確切的錯誤信息',或類似 – pm100

+0

假設鏈接器錯誤?很難說,當我們沒有一個確切的錯誤信息。總是可以用'in in'來表示它。 –

+0

我強烈建議通過將輸入乘以它自己來平方,特別是因爲它是一個整數,並且答案(顯然)是適合整數的。 'ans = in * in;' –

回答

2

這種類型的錯誤。
使用-lm鏈接到數學庫。

gcc yourfilename.c -lm

使用數學庫

0

我想你已經在Linux平臺上編譯。因此,使用命令-lm選項。

gcc yourfile.c -lm 
0

您正在使用scans代替scanf。它應該scanf("%d",&in);

+0

對..但這可能是一個錯字.... –