c整數怎麼加個小數點,C 整數怎麼加個小數點?

時間 2022-04-12 19:07:22

1樓:蔡白晁睿思

按正常的乘法計算。

查小數點位數,把相乘的乘數的小數點相加。

點小數點,從右往左查位數,查夠相加的位數,然後點上就可以了。

2樓:崔翊卓秀逸

private

string

ggg(string

num)

num=

num.substring(0,

num.length-2)

+"."

+num.substring(num.length-2);

return

num;

}或者是

string.format("",12345.6);

注意12345.6是數值,不是字串

3樓:匿名使用者

我就不寫**了,給你個思路:

去字串:string strnum = textbox1.text.trim();

轉換成數字:float num = float.parse(strnum );

轉換: num = num/100;

應該就是了。

4樓:匿名使用者

什麼也不需要修改,令textbox2.text等於下面就可以

textbox2.text=(float.parse(textbox1.text)/100).tostring();

5樓:匿名使用者

把int型改成float

如何把c#小數與整數部分分開

6樓:鈾氶瓏鈾

string a = 控制項來名.text;

double b = double.parse(a);//強制轉換成double

int c = (int)b;//獲取了源整數部分

string d = c.tostring();//把a轉換成string型別

string e = a.substring(0, d.length);//d.length是獲取d的長度的,用substring擷取就獲得小數點前面的了

console.writeline(e);//控制台輸出自己看的

string f = a.substring(d.length);//獲取非整數部分

console.writeline(f);//控制台輸出自己看的

string g = 0 + f;//0加上小數點和小數點後面的東西

console.writeline(g);//控制台輸出自己看的

7樓:匿名使用者

float n=12.223;

int x=(int)n;

float y=n-(float)x;

c# 如何獲取小數的整數部分

8樓:du瓶邪

用(int)強制把double型轉換(該轉換不會四捨五入)如double db = 25.6;

int tt = (int)db;

最後tt=25

若要四捨五入的話認為加0.5就可 如:

double db = 25.6;

db=db+0.5;

int tt = (int)db;

最後tt=26

9樓:匿名使用者

假如只是小數點一位的話那麼就,(int)(a+0.4)最簡單,

否則要判斷是否為整數了a>(int)a?a+1:a;

10樓:匿名使用者

這不就是四捨五入嗎?convert.toint32(a);

11樓:匿名使用者

private int zhuanhuan(double a)

使用 int b = zhuanhuan(4.0) 呼叫。

祝你學習愉快。

12樓:

其實這裡邊有乙個特別好玩的事,很多人不注意而已!

這裡我就順便就一下吧,在c#中其實是存在兩種演算法可以進行四捨五入計算的。一種叫四捨五入,一種叫銀行家捨入演算法(是四捨五入的一種)。

第乙個是常規的四捨五入:tostring("0.00"); // 保留兩位小數

該種計算的規則是看捨入值(精確值的後一位),例如tostring("0.00"),保留兩位小數,則百分位為精確位(保留小數的最尾一位),而千分位則是捨入位。看果捨入位數字為5及其以上的的都要入位(進一位),否則要捨(直接丟掉)。

第二個是銀行家捨入演算法: math.round(double, int),其中第二引數就是要保留的小數字置。

兩者除了乙個返回的是字串型,乙個返回double型別不同之外,計算法則也是不同的,計算出的結果會讓你大吃一驚:

int tmp = 4.65;

tmp.tostring("0.0")返回結果是字元型4.7!

math.round(tmp,1)返回的結果是double型的4.6(是的你沒看錯——是4.6)!

銀行家的傳入法則是,看捨入值,如果大於0.5*10^n,則進,如果小於則舍。如果等於,要看精確位的奇偶!如果是偶數則舍,如果是奇數則進!

換句話來說:math.round(4.

75, 1)的結果就是4.8!但math.

round(4.65,1)的結果就是4.6(不是4.

7)!但是對於math.round(4.

65000000000001,1)的結果就是4.7了!

兩者的區別,四捨五入只看捨入位!而銀行家傳入演算法則是看捨入值(區別好值與位的區別),因為四捨五入只看了位,所以逢5必進,而銀行家捨入值為0.5*10^n時要看精確位的奇偶性!

這一點一定要有區別的!

那麼是不是.net類庫中就不存在四捨五入了呢?其實是round方法的另乙個引數midpointrounding在控制,它預設實現的是銀行家傳入演算法,如果改成midpointrounding.

alwaysfromzero時(預設是toeven),它不再考慮奇偶性了!,捨入值等於0.5*10^n時會進製——雖然還得這麼理解,但其實與只看捨入位是一樣的了!

所以其實可以使用math.round(double, int, midpointrounding)這個方法的!

math.round(tmp, 1, midpointrounding.alwaysfromzero)是四捨五入;

math.round(tmp,1,midpointrounding.toeven)是銀行家捨入演算法;

當然——如果int的那位是0時,可以不寫的!如果是捨入位在整數前時,該位可以為負數。

當然,這裡還存在乙個極大的問題,數學上的進一法!包括退一法等均實現:

math.floor(),這是退位法則,在正數範圍內(int)強轉的結果與該結果相同!

math.ceiling(),這個是進製法則,在負數範圍內與(int)強轉結果相同。

數值 (int)強轉 math.floor(tmp) math.ceiling(tmp)

4.15 4 4.0 5.0

-4.15 -4 -5.0 -4.0

這三者幾乎都給你比較了!另外math中存在很多靜態的數學方法可以用的!

c# 如何將帶小數點的字串轉換為整型

13樓:像郭德綱剛

//遵循四捨五入原則:

string test1="9.3";

string test2 = "9.5";

int int1= convert.toint32(convert.todouble(test1));

int int2 = convert.toint32(convert.todouble(test2))。

在c#中,要將乙個字串或浮點數轉換為整數,基本上有三種方法:

1、使用強制型別轉換:(int)浮點數 。

2、使用convert.toint32(string)。

3、使用int.parse(string)或int.tryparse(string,out int)。

在實際使用時,當要轉換的字串或數字帶有小數時,發現它們有以下區別:

1、方法一:截斷 ,方法二:四捨五入

int a=(int)2.8; //結果為2

int b=convert.toint32(2.8); //b的值為3。

2、int.parse方法的引數如果不能轉換為整數,則報異常。

如 int c=int.parse("2.8"); //報異常,說明其引數必須是整數字串。

//int.tryparse,

int c = -1,

int.tryparse("2.8", out c); //不能轉換成功,結果為0,

int.tryparse("2", out c); //轉換成功,結果為2。

14樓:

int x = (int)convert.tosingle("12.6");

一樓的方法一樣可行。

補充說明:如果想要四捨五入的結果,這樣還不夠,我給的這個例子結果會是12.

15樓:匿名使用者

(int)float.parse("5.1")

c# 小數取整的問題

16樓:匿名使用者

math.ceiling()向上取整; d = 4.56789 string res = math.

ceiling(convert.todecimal(d)).tostring() res=5

math.floor()向下取整 ;string res = math.floor(convert.todouble(d)).tostring(); es=4

math.round是"就近捨入",當要捨入的是5時與"四捨五入"不同(取偶數),如:

math.round(0.5,0)=0

floor 和 ceiling是math unit 裡的函式,使用前要先 uses math。

trunc 和 round 是system unit 裡的函式,預設就可以用。

floor 直接往小的取,比如 floor(-123.55)=-124,floor(123.55)=123

trunc 直接切下整數,比如 trunc(-123.55)=-123, floor(123.55)=123

ceil 直接往大的取,比如 ceil(-123.55)=-123, ceil(123.55)=124

round 計算四捨五入,比如 round(-123.55)=-124,round(123.55)=124

17樓:匿名使用者

decimal num = 36270449.32textbox1.text = string.format("", num / 10000);

資料的型別為double,資料庫欄位為float,兩個只有兩位小數的數字相減,結果怎麼會有十多位小數喔?

這個是精度問題。

大整數加法怎麼寫c語言,超大整數的加法 C語言

目標 實現任意位數 1000位以內 的兩個大正整數的加法 include include include define maxsize 1000 int max int a,int b int main n2 maxsize sum maxsize scanf s s str1,str2 int l...

c語言超長整數加法,C語言 超長整數加法

中北吳延寶 模擬!就是實現你做加法的過程,一位一位算,注意進製就行了 陳阿水 真 以前我也做過乙個大整數程式,2000!不過那裡面沒有減法。做這個減法真讓花時間啊。include include include define max 4000 數字上限 dd char a strncpy a,t,j...

c語言輸入n個整數到陣列u中輸入正整數

include stdafx.h vc 6.0加上這一行.include stdio.h include string.h int main void int n,u 40 i,k while 1 if scanf d n n 0 break scanf d k for i 0 i 或者 inclu...

c語言定義正整數n,再輸入任意n個整數,計算並輸出這n個整數的和及平均值。使用動態記憶體分配方

資料鏈表的問題 1 定義乙個結構體 結構體內容如下 int number struct 結構體名稱 next 建立乙個單元 2 scanf n這個數,使用for迴圈n次 裡面 建立鍊錶 3 遍歷這個鍊錶裡面的資料 大約思路是這樣的 可能c語言語法寫得不太好 c語言 定義乙個正整數n,再輸入任意n個整...

c語言輸入正整數n,再輸入n個整數,降序輸出

include main for i 0 i printf d score i printf n c語言怎麼寫出 輸入乙個正整數n,再輸入n個整數,輸出最小值 的 include void main printf min d min 執行示例 include void mian int min a ...