1樓:網友
第乙個,四個兩兩不成字首關係,00是0010的字首,001也是,0010自己本身也是,字首就是二進位數前面的部分。判斷就是兩個數都從前開始,一位一位判斷,如果全部相同 比如0001001010 和000100,那麼較短的就是字首,一樣長兩個互為字首。
第二問我寫一基本程式吧,有可能會有錯誤,你能看懂就行啊。
varst:array[1..1000]of string;
i,j,k,l,n:longint;
ch:char;
beginreadln(n); n是位數,沒有給出的話用while not(eof) do 來做。
l:=1;for i:=1 to n dobeginread(ch);
if ((ch<'z')and(ch>'a') or((ch<'z')and(ch>'a'))
then st[l]:=st[l]+ch
else inc(l);
end;for i:=1 to l-1 dofor j:=i to l do
if st[i]=st[j]
then st[j]:=
for i:=1 to l do
if st[i]<>
then writeln(st[i]);
end.
2樓:網友
第乙個問題:
二進位數哪來的前序啊?
是前序遍歷嗎?那也是樹啊。
那個都不是那個的字首。
第二個問題:
可以在兩個空格之間找,然後輸出空格之間的東西。
用兩個變數做前指標做尾指標,尋找空格。
程式就不打了。
pascal問題字首
3樓:匿名使用者
record後面的分號應去掉 !
type point=^note;
note=record
data:integer;
next:point;
end;begin
end.
c語言中二進位數字的字首是什麼?
4樓:記住一座城
c語言中不能用二進位表示資料,彙編可以10100010b.
5樓:博士1男
沒有什麼字首,但是有正負符號,
6樓:出穎欒懷柔
程式設計抄時,若在十進位數字前bai面加上字首0,如052,則編譯器du把該數字視為八進位zhi而不是十進位,就像0x50一樣,dao所以像069這樣的數字是不合法的,因為八進位不能含有8及其以上的數字。標準c對二進位字首沒有規定,因為二進位不能直接用來參與運算,都是用十進位,十六進位,八進位來做的。
7樓:曲海冬鄺亭
不能用二進位。。。
八進位是0開頭,後面只能更0~7這個範圍內的數字。
16進位0x開頭,後面能跟0~e這個範圍內的字元。
c語言中二進位數字的字首是什麼?
8樓:a羅網天下
c語言不能直接表示二進位,沒有數字字首表示。
例子如下:假設有乙個 int 型別的數,值為5,那麼,我們知道它在計算機中表示為:
5轉換成二制是101,不過int型別的數佔用4位元組(32位),所以前面填了一堆0。
進位是一種計數的方式,常用的有二進位、八進位、十進位、十六進位。任何資料在計算機記憶體中都是以二進位的形式存放的。
我對進位的個人理解,二進位數是以2為計算單元,滿2進1位的數;八進位數是以8為計算單元,滿8進1位的數。
對於任何乙個數字,我們都可以用不同的進位來表示,比如,十進位數12,用二進位表示為1100,用八進位表示為14,用十六進位表示為0xc。
9樓:匿名使用者
標準c裡面沒有二進位常數的表示方法。
10樓:網友
十六進位不是 0~f 嗎?怎麼成 0~e 了?
11樓:yy_1輩子
不能用二進位。。。
八進位是0開頭,後面只能更0~7這個範圍內的數字。
16進位0x開頭,後面能跟0~e這個範圍內的字元。
12樓:網友
親!c語言中不能用二進位表示資料,彙編是可以吧。
pascal 十進位轉二進位
13樓:網友
十進位的數轉換為二進位的數的方法為除2取餘;舉例說明:
直到為0,然後倒過來寫(1010)二進位就ok了;
貌似你的程式的這兒。
if a[j]>=10 then write(chr(a[j]+55))
else write(a[j]);有問題,直接write(a[i])就行了!!!
14樓:匿名使用者
write(a[i]);不可以,原程式是對的。
用於標示各進位數的字首或者字尾分別是什麼?
15樓:網友
二進位是b(binary),十六進位是h(hexdecimal)。十進位一般不需標示,特殊情況下需要區分時標註d(decimal)。
用pascal程式設計「將正十進位整數轉換成二進位"
16樓:網友
var i,m,n,v,t:longint;ch:char;num:string;
beginreadln(n,m);;readln(num);
v:=0;for i:=1 to length(num) do begin
case num[i] of
0': t:=0; '1': t:=1; '2': t:=2; '3': t:=3;
4': t:=4; '5': t:=5; '6': t:=6;
7': t:=7; '8': t:=8; '9': t:=9;
a': t:=10; 'b': t:=11; 'c': t:=12;
d': t:=13; 'e': t:=14; 'f': t:=15
end; v:=v*n+t;end; num:='';
while v<>0 do begin case v mod m of
0:ch:='0'; 1:ch:='1'; 2:ch:='2';
3:ch:='3'; 4:ch:='4'; 5:ch:='5';
6:ch:='6'; 7:ch:='7'; 8:ch:='8';
9:ch:='9'; 10:ch:='a'; 11:ch:='b';
12:ch:='c'; 13:ch:='d'; 14:ch:='e';
15:ch:='f' end; num:=ch+num;v:=v div m;end;
writeln(num);end.
純拍,內含任何進位轉任何進位。
輸入:原進位,需要轉換的進位。
第二行:需要轉換的數。
二進位制的與計算怎麼算,二進位制數的與運算是相加,那麼或運算怎麼算?比如110000010和10100110進行或運算等於?
二進位制的計算資料是用0和1兩個數碼來表示的數。基數為2,進位規則是 逢二進一 借位規則是 借一當二 計算機中的二進位制是一個非常微小的開關,用 開 來表示1,關 來表示0。二進位制的計算分為五種 1 加法有四種情況 0 0 0,0 1 1,1 0 1,1 1 10,0進位為1。2 乘法有四種情況 ...
27怎麼化2進位數,27的二進位是什麼?
二進位為 十進位化成二進位,是用這個數每次除以,然後把餘數依次從右往左寫。最後乙個算式的商寫在最高位,比如, 。, .所以,答案是。二進位化成十進位,是用每位上的數字乘的次方,右起第一位是次方,往左依次是次方,次方。如, 的次方 的次方 的次方 的次方 的次方 的次方 的次方 除以取餘,倒過來就行了...
二進位制數10112的補碼是
補碼的運算規則是二進位制絕對值取反加1得到 答案都是5位二進位制數,因此 1011的絕對值是01011,取反 10100,加1 10101 計算機中正數的儲存就是儲存它的原碼,只有負數才是儲存補碼 1011的原碼是1111110011,就是他的二進位制數,別告訴我你二進位制不會求.除基取餘 1011...