a是實型變數,c允許進行賦值a=10,是什麼意思?
1樓:勤奮的小烏賊
首先我得肯定樓上兩位所說的部分內容,但不全面;
在這裡a=10的意思是:把10以實型變數賦值給a。
a是實型變數,毋庸置疑,但是仍然可以輸入,只不過在輸出的時候根據輸出值的形式進行決定,如若以%f輸出(即單精度float),則應保留7位有效值,為,若以%lf輸出,即(雙精度double),則保留15-16位有效數字,對於樓主所提問題,a當然可以賦予10,只不過此時的10已經改變了意義,變為了乙個實型常量。
其次我們說第二個問題,a=b,b=a當然可以繼續執行,首先把b的值5賦給a,a此時變為了5,然後把a=5這時的值賦給b,b當即也變為了5,。
最後希望樓主可以自己有所領悟,我的,謝謝。
2樓:圓蛤
就是a的值為10
能執行,因為在c中"="號是賦值的意思。
a=b就是把b的值賦給a,若a=3,b=5;a=b那最後a和b的值一樣都是3,反之亦然。
實型變數為何不可放10,沒聽說過float和double型不能放10這樣的整數,只是可能輸出的時候有變化。
scanf("%f",&c)就可以賦float型的,誰說不行。
3樓:網友
a是實型變數,即 float a=10;
c允許進行賦值就是scanf("%d,"&c);當然不。
一定是賦整型。
若定義了a=3,b=5,能執行a=b,b=a,此時a=5,b=5
設a,b,c是整型變數,且已正確賦初值,以
4樓:斐中火
()」具有最謹頌高優中盯先級,b先賦值9,再根據賦值運算子號自右向左進行賦值,再給b賦值賣晌和為1,再計算2=b,賦值運算子左邊必須是乙個變數,但數值2是常量。
語法錯誤。
由於a是實型變數,c程式中允許賦值a=10,因此實型變數允許存放整型?為什麼是錯的?
5樓:折心灬小軒
計算機每乙個儲存單元存放什麼值都是無所謂的,關鍵是編譯器怎麼對待它們。
c編譯器對待實型資料都是以浮點數來處理的,所以,它會為宣告/定義為實型的變數產生乙個以浮點運算為主的機器**,所以,什麼型別的變數都能隨便放,不過編譯器會不會讓你成功表示你想表示的意義就是不確定的了。
例如:char a; a=1;和a=『1』;的區別還明顯吧,乙個用整形字面值賦值,編譯器會自動用ascii進行編碼,再賦值、另乙個用字元字面值來賦值,編譯器直接就用ascii碼了。
再例如;float a; a=;和a=1;的區別呢?和1分別是實型字面值和整形字面值,都是儲存在儲存單元的乙個數罷了,對它使用不同的方式可以產生不同的結果,比如,把exe改為bmp,也是可以的,只不過可能是個亂七八糟的東西罷了。
c語言字元型變數的賦值新手上路
char c 376 這裡字元的賦值方式,好奇怪啊我看不懂 轉義字元懂吧 表示 c存放的是 0376就是8進位制數 x表示16進位制 轉成10進位制254,因為char型是從0到127,當超過127時候溢位,比如char c 128則溢位此時 int c 128。類似254在 128到127的區間 ...
在c語言中。結構體變數之間可以相互賦值嗎
可以直接賦值。定義結構體型別,然後用這個型別定義出來的變數就是結構體變數。c語言在相同型別的變數間賦值時是直接記憶體複製的,即將他們的記憶體進行復制,這裡因為同樣結構體變數,屬於同一種變數,所以賦值時是按照他們的記憶體分佈來直接拷貝的。舉例 voidmain stustu1 0,10 stutemp...
若變數已經正確賦值,以下符合C語言語法的表示式是 1,a b
不考慮分號的話,1和2是對的。1不用說了,2是可以的,2的執行順序是將c 2的值賦給b,然後將b賦值給a,這樣連續賦值是可以的。4不可以是因為表示式a 7返回的不是左值。答案是1。2 少 3 少 4 a 7不能被賦值 若變數已正確定義並賦值,下面符合c語言語法的表示式是 1分 a a b 1 b a...