1樓:匿名使用者
#include
void main()
double func(float x,float y)
2樓:崎下山護
如果用float最好不要用double返回
c語言可不可以判斷float型別中是否輸入了字元型別的資料!
3樓:口袋吧綠寶石
應該不可已
當字元型別的資料給float型別的變數賦值時會自動將char型資料轉換成float型別
在賦值後 float型別變數的大小就是char型別的字元的asscl碼值
c語言中給float型變數賦值時需要在數值後加f嗎
4樓:匿名使用者
不加是double型別,double可以隱式轉換成float,所以可以不加,但是編譯器可能給你一個警告。
5樓:gosunny小情緒
float型別的字面常量,後面需要加上f或者f來表示是一個單精度浮點數。只所以專要這樣寫,是屬因為預設的浮點數常量都是double型別。
#include
int main()
c語言 如何確定輸入的float型的小數點位數
6樓:匿名使用者
確定輸入的float型的小數點位數,可以通過sprintf函式實現數字轉字串,處理字串,判斷小數版點“.”後的位權數實現,但由於系統中float存在7位有效數字(含小數點,即小數點後有6位小數),使得系統或者補0,或者截斷,導致統計與實際輸入數字的位數不符。
//主要**
char buffer[40];
float fnum=12.38;
sprintf(buffer,"%f",fnum);//獲得字串int i=0,num=0;
for(;*(buffer+i)!='\0';i++)float 為單精度浮點型資料,在turboc中單精度型佔4個位元組(32位)記憶體空間,其數值範圍為3.4e-38~3.
4e+38,只能提供七位有效數字。建議輸入採用字串形式,這樣統計不會出偏差,使用數字時,使用double atof( const char *str )函式轉換。
7樓:
輸入後,bai十進位制數變2進位制。十進位制小
du數zhi 化 2進位制小數 常常 化不盡,所dao以用 大於小於回來判斷float型是否正好答大於小於某數值是困難的。
簡單辦法是用字串方法讀入,直接判斷字串。
float i;
char str[32];
int j,l;
scanf("%s",str);
sscanf(str,"%f",&i);
l = strlen(str);
然後查詢小數點,for (j=0;j 然後從最小的一位 str[l-1] 起迴圈,找到第一個不是 0 的位置。 if (str[k] !='0') 算出位數。 8樓:匿名使用者 樓上說的很對,要是你明白小數的二進位制儲存方式,你就知道了,只是近似儲存,除非是0.5,0.25,0.75等這些2的n次方分之幾的數是精確儲存為,其他的都是近似儲存的 要想精確儲存,只能用字串 春天的離開 c 中int向float型轉換 1 用convert方法。convert.toint32 string 括號裡的是需要轉換的字串。2 int32.parse string 和int.parse string 3 int32.tryparse string,out int result 或... 釋夕楊歌 十進位制實數轉化為二進位制,往往不能用有限的位元數精確表示。double型規定了用幾位元作指數,幾位元代表精度 即有效數字 這對十進位制實數的儲存精度進一步加了限制。 朱禮祭君 老譚的書上有 實型資料一般佔4個位元組 32位 記憶體空間。按指數形式儲存。實數3.14159在記憶體中的存放形... 標準c語言支援的浮點數符合ieee格式,是二進位制浮點數,並不是一個位元組存放一個十進位制小數位的。關於ieee浮點數,可以參考這裡 至於這裡的輸出問題,如ls所說,是printf預設輸出問題。如果使用 f和 lf格式控制符輸出浮點數,預設輸出保留6位十進位制小數,自動四捨五入。用 nf可以控制輸出...c中int向float型轉換
C語言中DOUBLE型資料儲存結果
關於c語言浮點數問題,c語言關於浮點型資料範圍的問題