C語言,如果我要把整數和浮點數一起定義,要怎麼做呢

時間 2021-08-30 09:16:56

1樓:匿名使用者

先定義一個結構體,其中有float變數和bool變數,如果是純c,你可以用整形的0、1來取代bool變數作為判斷是否是整形的引數,然後用此結構體定義陣列,初始化的時候,如果數值為整形,則bool變數賦值為true或者是整形引數賦值為1(注意這裡的整形變數是你判斷的引數,不是給你用來存數值的),也可以反過來賦值為false或者0;如果是浮點型數值,則將bool變數或者你的整形變數賦值為和存整形數值時相反的標識(即存整形數值時,如果bool變數為true(false),則存浮點型數值時bool變數為false(true),整形引數的賦值同理)。在讀取數值時候,通過bool變數或者你的整形引數0、1來區別整形和浮點型,做個判斷,然後做個型別轉換。

這個應該是很容易的問題,多動動腦子,辦法總是會有的。

2樓:曾哥is史泰龍

struct s

;不知道說的是不是這個意思 一個變數一個時間只能有一種型別 除非進行型別轉換。。

c語言中將一個浮點型賦值給整型時,會不會四捨五入?

3樓:幻翼高達

c語言中將一個浮點型賦值給整型時,不會四捨五入,會直接捨去小數部分的資料,也可以認為是執行了下取整運算。

將浮點數(單雙精度)轉換為整數時,將捨棄浮點數的小數部分, 只保留整數部分。將整型值賦給浮點型變數,數值不變,只將形式改為浮點形式, 即小數點後帶若干個0。注意:

賦值時的型別轉換實際上是強制的。

例如執行賦值後,無論5.4還是5.6都會變成5。

4樓:_夢幻陽光

不會的,不過可以寫一個函式自己轉換啊

#include

int fun(float x)

int main()

列印的為3和4,c語言很靈活的,樓主想要什麼幾乎都能實現

5樓:匿名使用者

不會的,如int x; 如果有 x=4.78; 則x的值是4

6樓:匿名使用者

不會,後面的小數就直接沒了,只有整數部分了

採納我哦

7樓:匿名使用者

不會的啦,整型的話,1/2=0,而不是0.5或者1,但整型變成浮點型要強制型別轉換,不知這麼解釋明白不。?

8樓:龍__鳳

不會的,看程式的執行結果:

9樓:路過

你好,不會的。浮點型資料賦給整型時,浮點型就會被自動轉換成整型,整型只是整數部分。

希望能夠幫到你。

10樓:匿名使用者

不會,一般是給你強轉成整形了,小數位就沒了,四捨五入是不存在的

11樓:匿名使用者

不會,只會把整數部分賦給整型變數

12樓:匿名使用者

不會,比如float a=4.45 那麼 printf("%d",a);輸入為4,直接把小數點後面的數刪去,不是四捨五入

c語言中怎樣判斷輸入的是整數還是浮點數

先存成字串,判斷有沒有小數點,再從字串格式化成整型或浮點型。include include include char strchr const char str,int ch int main int argc,char argv else system pause return 0 scanf s...

我的準丈母孃要把我和女朋友一起調動工作

phantom希望 行了 兄弟 別往自己臉上貼金了 面子不是別人給的 而是自己掙出來的 一看你就是個扶不起來的主 牽著不走打著倒退 我勸你最好先收收心氣 你的死愛面子到了人家眼裡很可能就變成目中無人 這不是給自己拉仇恨嗎 人家看你丈母孃的面上才提攜你們兩口子一下 與你的面子可沒一毛錢關係 這點你要搞...

我和鄰居的小孩在一起上學,每次考完試如果考的不好,我會沉默寡言,覺得自己心裡有數下次在努力就行。鄰

你要想開些,你不傳話是對的。家庭和睦很重要。至於父母互相比較你們,是因為你媽媽想刺激你,只是她的方式用錯了 我以前也是一個開朗的人,現在也開始慢慢的沉默了 因為漸漸我發現身邊沒有什麼真正意義上的朋友了 漸漸地察覺,人與人之間的交往,大都只停留在表象,越是試圖深交越能察覺到對方不理解自己。我最終變得茫...