vs2019c語言int整數開根號不能開怎麼辦

時間 2021-09-11 22:29:13

1樓:風若遠去何人留

可能原因有兩個:

1 使用方法不對。

c語言開平方有兩種方式:

a)使用sqrt函式:

double sqrt(double n);

功能是求n的算數平方根,返回為非負數。

b)使用pow函式。

double pow(double n, double m);

功能是求n的m次方。當m=0.5時,該函式用來求算數平方根。

2 傳入引數不正確。

由於數學定義,無論哪種方式,均只能求非負數的平方根。

如果穿入的引數為負數,則會出錯,導致程式出問題。

2樓:

我只想說一句,這道題出錯是正常,錯的關鍵在哪?

sqrt裡的引數是float或double型別,而你的m是int型別,型別不匹配,所以導致錯誤

這才是根源!!!

3樓:匿名使用者

你這是求素數吧。那開根號幹啥?教程是啥,能看看嘛。

4樓:匿名使用者

sqrt函式是求冪函式,誰告訴你是開方函式的?去往死裡抽,抽死拉倒,不用留面子

既然是求冪函式,那就得有兩個引數,sqrt(x,y)是求x的y次方,你寫一個引數算幾個意思?

我讓你計算兩個數的和,然後告訴你其中一個數是6,你算吧,告訴我結果?

開方,y的位置寫0.5那就是開方了

5樓:匿名使用者

k=sqrt((double)m);

不過那樣寫好像確實不會報錯。

c語言中怎麼開根號?

6樓:大野瘦子

用math.h裡封裝好的函式,具體如下:

求平方根:double sqrt(double x)

例:#include

#include

int main(void)

關於c語言的基本運算

1.加法運算子 +

int a = 10;

int b = a + 5;

在第3行利用加法運算子 + 進行了加法運算,再將和賦值給了變數b,最終變數b的值是15

2.減法運算子 或 負值運算子 -

int b = 10 - 5;

int a = -10;

1> 在第1行利用減法運算子 - 進行了減法運算,再將差賦值給了變數b,最終變數b的值是5

2> 在第3行中,這個 - 並不是什麼減法運算子,而算是一個負值運算子,-10代表的是負十

3.乘法運算子 *

int b = 10 * 5;

注意:乘法運算子並不是x或者x,而是星號*。變數b最終的值是50。

4.除法運算子 /

double a = 10.0 / 4;

double b = 10 / 4;

注意:除法運算子並不是÷,而是一個正斜槓 /

1> 第1行中的10.0是浮點型,4是整型,因此會將4自動型別提升為浮點型後再進行運算,最後變數b的值是2.5

2> 第2行中的10和4都是整型,計算機中的運算有個原則:相同資料型別的值才能進行運算,而且運算結果依然是同一種資料型別。因此,整數除於整數,求出來的結果依然是整數,會損失小數部分。

最後變數b的值是2。

5.模運算子或稱取餘運算子 %

注意:這個%並不是除號÷,它是一個取餘運算子,或者叫做模運算子。取餘的意思是,取得兩個整數相除之後的餘數。

比如,5除於2的餘數是1,5除於3的餘數是2。因此使用這個%有個原則:%兩側必須都為整數。

錯誤的寫法:1 int a = 5.0 % 2;

編譯器會直接報錯,因為5.0並非整數。

7樓:行走的皮卡丘呀

1、#include

sqrt()

2、用c語言函式

1、c語言是一門通用計算機程式語言,應用廣泛。

2、c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

3、儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

8樓:風若遠去何人留

在c語言中,可以使用庫函式sqrt來實現開根號計算。

1 標頭檔案:math.h

2 宣告:

double sqrt(double n);

3 功能:

將引數n開平方後,得到算數平方根返回。

4 呼叫形式:

sqrt(100);

為計算100的平方根。

9樓:月生戀珊

c語言里根號的使用:

先要在上面#include

然後條用sqrt()函式就可以開2次方了

sqrt是開2次方

pow(x,n)是開n次方望採納

10樓:匿名使用者

在標頭檔案中加入#include

之後使用sqrt即可,可以用double定義舉個例子:

#include

#include

#include

double sqrt(double n);

int main(void)

11樓:酷班圖

用math.h裡封裝好的函式。。見下。。

求平方根

double sqrt(double x)例:#include

#include

int main(void)

最後膜拜一下樓主的id

12樓:

用sqrt()函式開平方根

c語言中怎麼表示開根號?

13樓:大野瘦子

用math.h裡封裝好的函式,具體如下:

求平方根:double sqrt(double x)

例:#include

#include

int main(void)

關於c語言的基本運算

1.加法運算子 +

int a = 10;

int b = a + 5;

在第3行利用加法運算子 + 進行了加法運算,再將和賦值給了變數b,最終變數b的值是15

2.減法運算子 或 負值運算子 -

int b = 10 - 5;

int a = -10;

1> 在第1行利用減法運算子 - 進行了減法運算,再將差賦值給了變數b,最終變數b的值是5

2> 在第3行中,這個 - 並不是什麼減法運算子,而算是一個負值運算子,-10代表的是負十

3.乘法運算子 *

int b = 10 * 5;

注意:乘法運算子並不是x或者x,而是星號*。變數b最終的值是50。

4.除法運算子 /

double a = 10.0 / 4;

double b = 10 / 4;

注意:除法運算子並不是÷,而是一個正斜槓 /

1> 第1行中的10.0是浮點型,4是整型,因此會將4自動型別提升為浮點型後再進行運算,最後變數b的值是2.5

2> 第2行中的10和4都是整型,計算機中的運算有個原則:相同資料型別的值才能進行運算,而且運算結果依然是同一種資料型別。因此,整數除於整數,求出來的結果依然是整數,會損失小數部分。

最後變數b的值是2。

5.模運算子或稱取餘運算子 %

注意:這個%並不是除號÷,它是一個取餘運算子,或者叫做模運算子。取餘的意思是,取得兩個整數相除之後的餘數。

比如,5除於2的餘數是1,5除於3的餘數是2。因此使用這個%有個原則:%兩側必須都為整數。

錯誤的寫法:1 int a = 5.0 % 2;

編譯器會直接報錯,因為5.0並非整數。

14樓:天雲一號

c語言中,開根號用庫函式sqrt來表示。

函式原型:double sqrt(double x);

功       能:計算x的平方根

返 回  值:計算結果

舉例如下:

double x=2.55, y;

y = sqrt(x);  // 計算結果為y=1.5注:使用sqrt函式時,需要將標頭檔案#include新增進原始檔中

15樓:匿名使用者

用math.h裡封裝好

的函式。見下。

求平方根

double sqrt(double x)例:#include

#include

int main(void)

16樓:匿名使用者

#include "math.h"

sqrt(***);

17樓:all魔鏡

math.h裡sqrt()函式。程式原始碼及執行結果如下所示(系統會自動去掉句首空格,排版較亂請見諒):

#include

#include

int main(void)

怎麼用c語言判斷一個數是否為整數(這個數是開平方出來的)?

18樓:

如果這個數是n,一般如是if(n==(int)n) printf("it is a integer.\n"); else printf("it is not a integer.\n");判斷就可以了。

但這不100%準確,因為同一個整數用int表達和用double表達實際上是有差別的,所以當浮點數與整型數相差非常非常小時可能會誤判。

19樓:匿名使用者

因為實型和整型變數是不能直接比較的,要做一步型別轉換才能比較首先要明確允許

的誤差是多少。比如一般情況誤差的絕對值小於10-8時我們可以認為兩個實數是相等的。

**如下

#include

#include

main()}結果

20樓:聽不清啊

if(fabs(x-(int)(x+0.5))<1e-5)printf("%d是一個整數",(int)(x+0.5));

這裡把它與相應整數的差小於0.00001,就視為它就是一個整數。

c語言判斷一個數是否為整數

21樓:考元修龐裳

使用截尾函式可以驗證!

截尾函式是指將小數點後面的全部丟掉!

所以,如果是整數的話,那麼截去小數點後面的應該等於原來的這個數字;

否則,便不是整數!

截尾函式:trunc(x)

判斷:if

trunc(x)=x

then

……翻譯:如果x是整數的話……

望採納!

22樓:匿名使用者

以判斷n開根號後是否是整數為例

#include

#include

main()

23樓:凌亂心扉

方法1:

#include

#include

float x;

...if(fabs(x-(int)x)<1e-8)printf(“x是一個整數\n”);

else printf(“x不是一個整數\n”);

方法2:

int c=(int)b,d=(int)(b+0.999999)if(c==d)

printf(“是整數\n”);

else

printf(“不是整數\n”);

方法3:

float b;

...if(b-(int)b==0)

printf(“是整數\n”);

else

printf(“不是整數\n”);

方法4:

float b;

...if(b!=(int)b)

printf(“不是整數\n”);

else

printf(“是整數\n”);

24樓:育知同創教育

double x;

scanf("%f",&x);

if((int)x==x)

printf("%f是整數",x);

把所輸入的數強制轉換為整數,然後判斷是否跟原來相等。

vs2019 C連線sql問題,vs2012 C 連線sql問題

看看資料庫passwords欄位的型別 如果是char 或nchar型別的話 比如是char 10 如果password不足 10位 則末尾會自動被空格補足 你在if textbox2.text.trim password 這行打斷點除錯 看看具體值是什麼 select passwords。你的資料...

VS2019 C 控制檯程式,為什麼用Ctrl F5,結果

不知道 我也想問這個問題 有時會一閃就沒 有時就不會 加一句system pause 試試 vs2010 c 控制檯程式,為什麼用ctrl f5可以避免程式一閃而過 ctrl f5 會在程式全部執行完畢後加一個暫停。那兩種方法不行是因為執行完這兩句之後才執行的析構,然後一閃就沒了。為什麼我用vs20...

vs 2019 如何編譯c語言,vs 2008 如何編譯C語言

1.vc 就可以了 2.應該建立 cpp檔案 3.首先你要建立一個工程,建立一個win32控制檯應用程式的 工程然後再資原始檔檢視裡可以新增 你現成的原始檔4.在工程環境下 可以按f5執行 或是工具欄中間的那個綠色的小箭頭 回答完畢 希望你能明白 奪魂狼劍 不建議你使用vs2008來編譯純c程式。v...