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,然後... 整數部分 採用除基取餘法,基數為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進位制 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,即餘數用 表示。再說...十進位制,八進位制,十六進位制,二進位制怎么相互轉化
十進位制327 65轉化八進位制,十進位制65轉換成二進位制和八進位制,十六進位制怎麼轉換?
求二進位制八進位制十進位制16進位制之間的詳細轉換關係