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次方分之幾的數是精確儲存為,其他的都是近似儲存的 要想精確儲存,只能用字串 float型資料精度只有 有效數字 6 7 位,所以存放12345.53231 時,只能精確到 12345.53。要存放 12345.53231,可以用 double 或 char s.double 仍有回 10進位制到2進位制,2進位制回答10進位制的誤差問題。include int main 輸... double與float的區別在於在記憶體中存放資料時佔用的記憶體不一樣,前者8位元組,後者4位元組,也就是前者儲存的小數位數比後者多一倍。舉例說明對於1.9999996666,按照float輸出,結果可能為1.999999,如果按照double可能為1.999999。因為c語言預設輸出小數位數都取... include include int main int i scanf s num printf s dbits n num,strlen num for i 0 num i i if num i 9 num i 0 cnt num i 0 for i 0 i 10 i if cnt i prin...請問c語言問題float型資料轉int把整數部分和小
c語言中,float型和double型變數如果不指定寬度,應
求教c語言從鍵盤輸入整型資料int型編寫