1樓:匿名使用者
int num = 10;//數字10轉換如下string result1 = convert.tostring(num, 2); //二進位制結果為 1010
string result2 = convert.tostring(num, 8);//八進位制結果為 12
string result3 = convert.tostring(num, 16);//十六進位制結果為 a
2樓:現實夢想的抉擇
public void shownumber()}}
編寫一個程式,要求使用者輸入一個十進位制正整數,然後分別轉換成為二進位制數、八進位制數和十六進位制數輸出
3樓:匿名使用者
樓上的太複雜了吧!c的話直接這樣:
main()
printf("二進位制為%s",x);}
4樓:
這段**是我用c語言寫的,可以實現多個功能的進位制轉換,你參考參考:
#include
#include
#include
void menu();
int bintobex(char str[100],int b);
char * bextobth(int n,int b);
int main()
while(x>12||x<0);
char str[100];
int n;
switch(x)
}return 1;
}void menu()
int bintobex(char str[100],int b)str[i]=0;
len=strlen(str);
for(i=0;i
return str;}
5樓:可の獨角
你是用什麼語言的啊?如果沒有直接轉換的話一般方式如下:
對於轉換成n進位制的數s,先讀入數字,判斷它在n^a與n^(a+1)之間,令m=0,然後進行迴圈:m=m*10; s div n^a得到的數值存入m,令n為n mod n^a; a=a-1;直到n為0
使用者輸入一個十進位制正整數,然後分別轉換成為二進位制數、八進位制數和十六進位制數輸出。(是c++,不是c)
6樓:匿名使用者
#include
using namespace std;
int main()
cout<十六進位制使用格式化輸出即可,oct表示八進位制,hex表示十六進位制
cout<
cout<
}如果有不懂請追問。
7樓:支景明孔茶
確定問題沒有什麼別的要求??比如說111可以是二進位制也可以是八進位制和十六進位制。。。
8樓:匿名使用者
有一個轉換函式很好用:
char *itoa(int value, char *string, int radix);
int value 被轉換的整數,char *string 轉換後儲存的字元陣列,int radix 轉換進位制數,如2,8,10,16 進位制等
標頭檔案: itoa操作使用
但注意:這個不是c++標準庫函式,只能在visual c++系列編譯器環境下使用
想在gcc上做的話,可以設定輸出格式,也可以自己編函式進行轉換……
9樓:匿名使用者
有輸出格式設定的,
#include
#include
int main()
編寫一個程式,然後分別轉換成為二進位制數,八進位制數和16進位制數輸出。謝謝了我才學到c++第二章,請用
10樓:匿名使用者
#include
using namespace std;
int n,a[100];
int main()
cout<=1;i--)
cout<0)
cout<=1;i--)
cout<0)
cout<=1;i--)
{if (a[i]>9)
{char t=a[i]+55;
cout<
11樓:匿名使用者
#include
#include
#include
char h=;
int main()
puts("轉換為2進位制數結果:");
for(i=n;i>0;i--)
printf("\n");
//---------------------------------------
n=0; d=d0;
while(d>0)
puts("轉換為8進位制數結果:");
for(i=n;i>0;i--)
printf("\n");
//---------------------------------------
n=0; d=d0;
while(d>0)
puts("轉換為16進位制數結果:");
for(i=n;i>0;i--)
printf("\n");
return 0;
}執行結果:
請輸入一個10進位制數:
111111
轉換為2進位制數結果:
11011001000000111
轉換為8進位制數結果:
331007
轉換為16進位制數結果:
1b207
c#7.編一個程式,輸入一個正整數n,把它轉換為二進位制數,並輸出。提示,應該利用陣列。
12樓:匿名使用者
using system;
public class test
}console.write("轉換為二進位制後是:");
for(int i=j;i>=0;i--)console.write("",arr[i]);
console.writeline ();}}
13樓:筱喬々流水
很簡單的啊
和c語言演算法是一樣的
在進行輸入數的時候你最好用下try catch 語句控制一下
c#語言編寫**,將一個10進位制正整數轉換成2進位制字串。
14樓:匿名使用者
using system;
using system.collections.generic;
using system.text;
namespace test
}static void main(string args)}}測試結果如圖所示
15樓:麗舞傾心
//輸入一個正整數,輸出對應的二進位制字串#include
#define max 100
int main()
else
num /= digit;
}printf("%s", &str[max - i]);
return 0;}
16樓:free放開
用十進位制的除以2,例如
789=1100010101 789/2=394.5 =1 第10位 394/2=197 =0 第9位 197/2=98.5 =1 第8位 98/2=49 =0 第7位 49/2=24.
5 =1 第6位 24/2=12 =0 第5位 12/2=6 =0 第4位 6/2=3 =0 第3位 3/2=1.5 =1 第2位 1/2=0.5 =1 第1位
將二進位制數(110110010.100101)b分別轉換成八進位制,十進位制,十六進位制
17樓:水瓶一頭老母豬
^^1、二進位制轉為八進位制
110110010.100101(2)→110'110'010.100'101(2)=662.45(8)。
2、二進位制轉為十進位制
110110010.100101(2)=1*2^8+1*2^7+0*2^6+1*2^5+1*2^4+0*2^3+0*2^2+1*2^1+0*2^0+1*2^(-1)+0*2^(-2)+0*2^(-3)+1*2^(-4)+0*2^(-5)+1*2^(-6)
=256+128+0+32+16+0+0+2+0+1/2+0+0+1/16+0+1/64
=434.578125(10)。
3、二進位制轉為十六進位制
110110010.100101(2)→1'1011'0010.1001'01(2)→0001'1011'0010.1001'0100(2)
=1b2.94(16)。
進位制/位置計數法是一種記數方式,故亦稱進位記數法/位值計數法,可以用有限的數字符號代表所有的數值。可使用數字符號的數目稱為基數(en:radix)或底數,基數為n,即可稱n進位制,簡稱n進位制。
現在最常用的是十進位制,通常使用10個阿拉伯數字0-9進行記數。
18樓:
^110110010.100101(2)→110'110'010.100'101(2)=662.45(8)。
110110010.100101(2)=1*2^8+1*2^7+0*2^6+1*2^5+1*2^4+0*2^3+0*2^2+1*2^1+0*2^0+1*2^(-1)+0*2^(-2)+0*2^(-3)+1*2^(-4)+0*2^(-5)+1*2^(-6)
=256+128+0+32+16+0+0+2+0+1/2+0+0+1/16+0+1/64
=434.578125(10)。
110110010.100101(2)→1'1011'0010.1001'01(2)→0001'1011'0010.1001'0100(2)
=1b2.94(16)。
19樓:毛來福養雲
用除2(8,16)求餘法,
意思是,
比如八進位制的:
79/8=9....7
9/8=1...1
所以,117就是八進位制的,相當十進位制的79;
二進位制的:
79/2=34...1
34/2=17...0
17/2=8....1
8/2=4...0
4/2=2...0
2/2=1...0
1/1=0...1
所以是:1000101
c++ 編寫一個程式,將使用者輸入的十進位制整數轉換成任意進位制的數。
20樓:匿名使用者
1、首先,定義四個整型變數,儲存十進位制整數、二進位制整數等計算值。
2、給變數i和二進位制數賦初值,值為0。
3、接著,輸入一個十進位制整數。
4、用while語句判斷,條件為十進位制數是否為零。
5、當十進位制數不為零時,對十進位制數用2求餘,儲存在變數d中。
6、十進位制數除以2,使數值縮小為原來的二分之一。
7、輸出十進位制數所對應的二進位制數。
8、執行程式,輸入任意一個十進位制整數,計算機就會輸出對應的二進位制數。
21樓:oo墨色傾城
#include//我這個程式只針對2~16進位制的轉換using namespace std;
char str[17]=; //為了使程式簡化而提前定義將會輸出的數字
int main()
for(j=i-1;j>=0;j--)
cout<
}程式已近經過我自己驗證後,無錯誤!
如果還需要加另外的功能,請lz自行修改即可。
22樓:匿名使用者
%x是十六進位制,%o是八進位制,其他的要用ls的方法計算啦
程式設計實現:輸入一個十進位制數,轉換成對應的二進位制數、八進位制數和十六進位制數並輸出。
23樓:墨汁諾
1、#include
using namespace std;
int main()
cout
cout
2、main()
printf("二進位制為%s",x);}
24樓:匿名使用者
以下是c++的:
#include
using namespace std;
int main()
cout<六進位制使用格式化輸出即可,oct表示八進位制,hex表示十六進位制
cout<
cout<
C編寫程式,將使用者輸入的十進位制整數轉換成任意進位制的
1 首先,定義四個整型變數,儲存十進位制整數 二進位制整數等計算值。2 給變數i和二進位制數賦初值,值為0。3 接著,輸入一個十進位制整數。4 用while語句判斷,條件為十進位制數是否為零。5 當十進位制數不為零時,對十進位制數用2求餘,儲存在變數d中。6 十進位制數除以2,使數值縮小為原來的二分...
c語言編寫源程式,實現輸入任意十進位制數,將其按八進
include stdio.h main c語言寫程式任意輸入一個小寫字母,分別按 八進位制,十進位制,十六進位制,字元格式輸出 include void main 這個執行得起,是最簡單的。但是並不穩健,沒有涉及你輸入大寫的時候的錯誤提示,等等.include stdio.h void main ...
c語言程式輸入十進位制數將其轉換為二進位制
include int main for int j i 1 j 0 j printf d bin j printf n c語言程式設計題 從鍵盤輸入一個十進位制數,將其轉換為二進位制 八進位制和十六進位制數,並同時輸出。這題非常簡單,你要學過資料結構就非常容易 我用個棧來幫你做 此棧資料項為整型,...