我c 作業有八進位制和十進位制相互轉換,但我寫完後輸出結果始終為0,能不能幫我看看問題出在哪

2021-04-17 17:53:44 字數 3917 閱讀 5953

1樓:匿名使用者

#include

#include

using namespace std;

int main( )  //*************************=

do  while( b != 0 );

cout<<"轉換結果為"<

c++作業要求八進位制和十進位制互相轉換,但我做完輸出結果始終為0,想問一下問題出在哪?

2樓:匿名使用者

演算法e68a8462616964757a686964616f31333431346339有問題,然後result1、2合成1個變數就行了,用int型別。最後直接輸出不需要判斷,除非你想完整把 「8轉10」 或 「10轉8」 這樣的資訊也顯示出來,判斷相等應該用 == 而不是 =。

#include

#include

using namespace std;

int main()

while (b != 0);

break;

case 10:

do while (b != 0);

break;

}//*************************=//if (a == 10)

// cout << "轉換結果為" << result2 << endl;

//else

cout << "轉換結果為" << result1 << endl;

return 0;}

3樓:永生的獨行者

演算法對不對暫且不談。

if(result1=0) 問題很大。

4樓:匿名使用者

#include

#include

using namespace std;

int main( )    //*************************=

do  while( b != 0 );

cout<<"轉換結果為"<

c語言:輸入一個十進位制整數,將其轉換為八進位制數輸出。不能使用%0,仍然屬於%d輸出

5樓:楓之舞

#include "stdafx.h"

#include

#include

#include

char* fn(int n,int count );char result[32]=;

char rst[32]=;

int remainder;

int i=0,j=0;

while(count>0)

for(j=0;j輸入的整數或者進位制數為零表示退出程式\n");

while(1)

} system("pause");

return 0;}

6樓:匿名使用者

#include

#include

void main()

else

for(k=i;k>=0;k--)//逆序輸出printf("%d",a[k]);

}//注:這dao

裡採內用的方法是除8取餘逆序列容

7樓:匿名使用者

# include

void main()

printf("%d\n",n);

}能看懂,其它什麼數值轉換就基本專沒問題屬了。

8樓:匿名使用者

除copy8取餘

逆序輸出bai就可以du了

zhi哈

# include

void main()

while(count)

printf("\n");}行了

9樓:寂寞而莫我知也

#include

void pp(int n)

void main()

使用者輸入一個十進位制正整數,然後分別轉換成為二進位制數、八進位制數和十六進位制數輸出。(是c++,不是c)

10樓:匿名使用者

#include

using namespace std;

int main()

cout<十六進位制使用格式化輸出即可,oct表示八進位制,hex表示十六進位制

cout<

cout<

}如果有不懂請追問。

11樓:支景明孔茶

確定問題沒有什麼別的要求??比如說111可以是二進位制也可以是八進位制和十六進位制。。。

12樓:匿名使用者

有一個轉換函式很好用:

char *itoa(int value, char *string, int radix);

int value 被轉換的整數,char *string 轉換後儲存的字元陣列,int radix 轉換進位制數,如2,8,10,16 進位制等

標頭檔案: itoa操作使用

但注意:這個不是c++標準庫函式,只能在visual c++系列編譯器環境下使用

想在gcc上做的話,可以設定輸出格式,也可以自己編函式進行轉換……

13樓:匿名使用者

有輸出格式設定的,

#include

#include

int main()

c語言程式設計,輸入十進位制數輸出十六進位制和八進位制

14樓:園林植物手冊

可以通過下面的公式解決

#include

const int maxn = 128;

const int index8 = 8;

const int index16 =16;

int main()

while(m)

int i;

for(i = cot8 - 1; i >= 0; i--)printf("%d", array8[i]);

puts("");

for(i = cot16 - 1; i >= 0; i--)擴充套件資料:

十進位制轉十六進位制的具體方法:對於整數部分,用被除數反覆除以16,除第一次外,每次除以16均取前一次商的整數部分作被除數並依次記下每次的餘數。另外,所得到的商的最後一位餘數是所求二進位制數的最高位。

對於小數部分,採用連續乘以基數16,並依次取出的整數部分,直至結果的小數部分為0為止。故該法稱「乘基取整法」。

10進位制數轉換成十六進位制數,這是一個連續除以16的過程:把要轉換的數,除以16,得到商和餘數,將商繼續除以16,直到商為0。最後將所有餘數倒序排列,得到數就是轉換結果。

15樓:匿名使用者

可以格式化輸出。

#include

int main()

16樓:匿名使用者

#include

void showbit(int n)

printf("%d",n%2);

}void showoct(int n)

printf("%d",n%8);

}void showhex(int n)

printf("%d",n%16);

}int main()

17樓:著述的鴨子非了

#include

main()

while(n!=0);

for(i--;i>=0;i--)

putchar(s[i]);

} //十進位制轉八進位制 十六進位制方法類似#include

void main()

十進位制,八進位制,十六進位制,二進位制怎么相互轉化

汗,沒寫完 有通用的公式 你輸入一個x進位制下的數,n x,要轉到y進位制程式設計n y那麼 將n x按權,再相加,用十進位制的方法相加 解釋一下 如二進位制數1010按權就是1 2 3 0 2 2 1 2 1 0 2 0 裡面表示的是2的n次冪。然後就可以得到十進位制下的數n。n不停的除以y,然後...

十進位制327 65轉化八進位制,十進位制65轉換成二進位制和八進位制,十六進位制怎麼轉換?

整數部分 採用除基取餘法,基數為8,327 8,商40,餘7 40 8,商5,餘0 5 8,商0,餘5 從上到下依次是個位 十位 百位,所以,最終結果為 507 8。327 10 507 8 101000111 2小數部分 0.65 8 5.2,取5 0.2 8 1.6,取1 0.6 8 4.8,取...

求二進位制八進位制十進位制16進位制之間的詳細轉換關係

16進位制 0 1 2 3 4 5 6 7 8 9 a b c d e f 10進位制 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 這是16進位制轉化10進位制的 我來幾個例子吧 27 10進位制 27 16 1餘11,則用16進位制可表示為1b,即餘數用 表示。再說...