A. c語言基礎 求解,感謝
再c中, 數字前面帶0 表示8進制。
帶0x表示 16進制。
043 == 35 == 0x23
B. C語言,Ox17+OxC和043等值么怎麼算啊和3.5E+1等值么
0x開頭的是十六進制,這兒0x17+0xC = 0x23 = 2*16^1 + 3*16^0 = 32 + 3 = 35,
0開頭的是八進制,這兒043 = 4*8^1 + 3*8^0 = 32+3 = 35
3.5E+1 表示3.5 * 10^+1 = 3.5 * 10 = 35
所以3個都是相等的
C. 呵呵,問一個C語言里字元串長度的問題。
字元串長度單位是位元組個數。
字元串長度 從 字元串開始計算,遇到 字元串結束符 結束,結束符 不算在 字元串 長度里。
一對 單引號 括起的 是 一個 「字元常量」, 占 1個位元組長度。
用反斜杠開始的字元叫 轉意/轉義 字元。
\" 表示1個雙引號字元。
1 表示字元 1
\43 表示 是 8 進制數 043 對應 的 ASCII 字元
\n 是 新行符 (new-line 或 line-feed)
\x11 表示 是 16 進制數 0x11 對應 的 ASCII 字元
\' 表示1個單引號字元
字元串結束符是 '\0'
什麼叫 轉意/轉義 字元,為何要用到 轉義 字元,等等,你需要看書學習才懂。
D. c語言中的一選擇題: 在C語言中不可表示的字元是() A.換行符 B.響鈴符 C.求和符 D.垂直製表符
我個人認為這里的求和符值得是加法這種運算,而ASSII中的+是為了讓計算機識別輸入進去的符號,因為計算機只是別01代碼,為了人們方便看將+的二進制轉為十進制就是043了
E. c語言中\043和\43一樣嗎都合法嗎
字元'\043'和字元'\43'是一樣的,都是代表8進制的字元,都是合法的。
F. C語言 2個小問題 關於標示符 進制轉換問題
它們不是C的保留字,又符合C標識符的要求。
C中,不作特殊聲明3.5E+1是double型,而043是int型,所以不相等。
不知是什麼問題?
整數部分:用8除,返向取余數;小數部分:用8乘,正向取整數。
整數部分:用16除,返向取余數;小數部分:用16乘,正向取整數。
整數部分:用10除,返向取余數;小數部分:用10乘,正向取整數。但要記住被除數是16進制。
整數部分:用10除,返向取余數;小數部分:用10乘,正向取整數。但要記住被除數是8進制。
G. c語言編程輸出結果的疑問
樓上各位有說的正確的,也有欠妥的,我總結一下:
首先,對於第一個結果可以肯定:你的程序和輸出結果不符!
(1)如果你程序是對的:
第一個結果就是43,正常的10進制常量43賦值給c,又把c賦值給i,再以10進制形式輸出i,也就是輸出43了。
(2)如果想得到教材的輸出結果,程序應為
c=043;i=c
printf("i=%d\n",i);
這里043表示8進制常量
其次,對於第二個結果,'\376'表示ASCII的8進製表示為376的字元,10進制為254,這時由於超過了127,因此用了2個Byte來表示,而系統對2Byte將會當成擴展ASCII字元集進行處理,所以如果用%c輸出的話,會看到這么個漢字「」……,至於輸出的-2是這樣來的:
盡管(8進制)376=(2進制)011 111 110=(10進制)254
但從char型的c向int型的i賦值時,默認char只佔一個Byte,所以只有後面8位賦值給了i,因此i的值只是11111110,又最高位是符號位,因而該值轉換成10進制(除符號位外取反:10000001,再加1:10000010)得-2。
H. c語言。為何043和17+18等值。是把35轉化為八進制么求解釋
嗯,八進制的043表示十進制的35
I. 在C語言中,十進制的35可等價地寫為______ . A,023 B,043 C,43 D,23
0XX為八進製表示,應該是B:043=4*8+3=35