如何用c語言編寫將十進位制的數轉換成二進位製數的程式

2021-03-04 00:47:16 字數 6566 閱讀 1943

1樓:

簡單辦法是用聯合體,直接列印出來。

typedef union dandb dandb;

int main()

===手工計算,要不斷除2取餘,獲得所有位,再列印出來。

c語言編寫乙個程式,將十進位制整數n 轉換成二進位製數

2樓:匿名使用者

#include

int transfer(int x)

}return y;

}void main()

擴充套件資料:

c語言書寫規則:

1.乙個說明或乙個語句佔一行。

2.用{} 括起來的部分,通常表示了程式的某一層次結構。{}一般與該結構語句的第乙個字母對齊,並單獨佔一行。

3.低一層次的語句或說明可比高一層次的語句或說明縮排若干格後書寫。以便看起來更加清晰,增加程式的可讀性。在程式設計時應力求遵循這些規則,以養成良好的程式設計風格。

3樓:匿名使用者

#include

#include

int main()

printf("%d",a);

return 0;}

4樓:匿名使用者

將輸出的內容先放置到乙個陣列中,最後陣列反序輸出

5樓:遊龍科技工作室

#include//十進位製數轉化為二進位製數void to_binary (int n); //binary n.二進位制的;雙的

int main ( void )

printf("完成");

return 0;

}void to_binary(int n)

用c語言編寫二進位制轉換十進位制的程式。

6樓:依然特雷西

1、為了完成進製的轉換,在主函式中宣告了個函式sum,主要用於將二進位制的每一位轉換為十進位制後的數相加,返回值就是相加後的和。另外定義了乙個陣列array[8],用於存放輸入的八位二進位製數。

2、然後使用了乙個for迴圈語句,用於輸入八位二進位製數。

3、在sum函式中,又宣告了乙個power函式,power函式的作用是求2的n次方。

4、接著,使用了乙個for迴圈語句,i用於控制迴圈的次數,n從最高的指數7開始每次迴圈減一,如果指數大於或等於零的,就進行迴圈。

5、在power函式中,如果b等於零,即指數為零,則返回1,否則就進入乙個迴圈,j用於控制迴圈次數,有疑問的可以用筆算算乘2的個數對不對,最後將i返回。

6、最後看一下執行的結果。

7樓:匿名使用者

一下兩個程式均在vc在編譯通過。

/*如果這個二進位製數比較大的話, 大到只能用陣列儲存這個二進位製數,當然如果大到轉化成10進製int存不下的情況那另當別論*/#include

#include

int main()

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

return 0;}/*

如果這個二進位製數的位數不超過10位的話

可用這個程式

*/#include

int main()

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

return 0;}

8樓:匿名使用者

#include

#include

#include

#include

//bin二進位制串

//返回其對應的十進位製數

//返回-1表示失敗

//end表示終止位置

unsigned bintodec(char *bin,char **end)

i = strlen(bin);

*end = bin+i;

while(i>=0)

else if(*(bin+i) == '0')else

i--;

}return dec;

}int main(int argc,char *argv)

9樓:zz迎風

#include

#include

void main()

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

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

如何利用c語言編寫程式將乙個十進位製數轉換為二進位制?

10樓:匿名使用者

網上看了很多,下面這個最讚

#include

void showbit(int n)

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

}int main

參考裡面還有其他進製的轉換,都是利用迭代演算法

11樓:龐綺琴

#include

void change(int x)

change(x>>1);

printf("%d",x&1);

}int main()

c語言程式設計:把乙個十進位制的數轉換成二進位制的數

12樓:0o閉關修煉

沒有仔細看你的邏輯是否正確,如果你只是想把程式除錯通過的 話把b+=n*pow(10,i); 改成b+=n*(int)pow(10,i); 就可以了;

貌似pow()返回的是乙個double型別的,所以你賦值的時候有乙個警告;

再加上main()函式就可以編譯通過了.

13樓:匿名使用者

這是因為缺少了主函式,加上以下乙個主函式就可以了。

void main()

14樓:匿名使用者

int trans2(int x) //轉換為二進位制的函式b+=m*pow(10,i+1);//加上尾數return b;}

15樓:匿名使用者

沒有main函式是編譯不出可執行檔案的

16樓:ン尐の白

這時代 怎麼還學c語言啊??

不過學好c語言 打好基礎 很重要`呵呵`

c語言程式設計,如何將十進位制轉化為2進製

17樓:匿名使用者

c語言程式設計將十進位制轉化為2進製可按手工轉換規則進行程式轉換。

整數佔四個位元組,每位元組8位,共32位。所以,可以定義乙個32位的陣列來儲存轉換結果。

迴圈將整數進行除2取餘數,餘數儲存到陣列中。

當整數整除為0時,結束迴圈

逆序輸出陣列,得到轉換結果

參考**:

#include

void main()

while(n!=0) ;

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

printf("%d",c[i] );

printf("\n");}

18樓:匿名使用者

//do while把for改改

#include

#include

//函式宣告

void tenttwo(int x);

void main()

//函式實現

void tenttwo(int x)

while(x!=1);

d[num]=1;  //最後乙個數為1

/* for(j=0;j<1000;j++)num++;

}*///num++;

//逆向輸出陣列中的資料拼接成二進位製數

for(j=num;j>=0;j--)

printf("%d",d[j]);

printf("\n");}

19樓:

//#include "stdafx.h"//vc++6.0加上這一行.

#include "stdio.h"

void dfs(int k)

void main(void)

20樓:知道不知道巨蟹

#include "stdio.h"

#define stacksize 100typedef int elemtype;

typedef struct sqstack;

initstack(sqstack *ps)int push(sqstack *ps,elemtype e)int pop(sqstack *ps,elemtype *pe)main()

while(n);

while(pop(&s,&e))

printf("\n");

return 0;}

21樓:閒來無事

#include

#include

void main()

while (iinput);

printf("\n結果

:%d", iresult);}

22樓:super遊戲大神

int i=0;

char b[32]=;

while(n!=0)

用c語言程式設計實現十進位制轉化為二進位制 5

23樓:夏天的小紅花

有兩種計算方法,執行的結果是完全相同的:

一是採用位運算的方法:

#include

int main()

if(k==1)

for(i=0;i<32;i++)

printf("%d",a[i]);

return 0;}

24樓:作死的卡拉

有一種騷操作可以很快實現這個

發不了**就發圖吧emmm

得到的結果確實是沒問題的emmm

如果你是c語言不是c++的話,可以了解一下這樣搞

用c語言寫的十進位製數轉換為二進位製數的程式

25樓:匿名使用者

#include

int ****oer(int a,int* b) }return i;

} int main()

26樓:匿名使用者

#include"stdio.h"

void jinzhi(int n,int j)void main()

遞迴演算法,可版以轉換任意2-9之間的進製,如果要權就100轉換為2進製就輸入100空格2就可以了

27樓:匿名使用者

#include

void dto2(int n, char** s)

}int main()

c語言把二進位製數轉換成十進位製數的程式怎麼寫。

28樓:幻翼高達

需要bai準備的材料分別有:電腦、duc語言編譯器zhi。

1、首先,開啟daoc語言編譯器,新建一

回個初始答.cpp檔案,例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:int a = 0b10000001;printf("%d", a);。

3、編譯器執行test.cpp檔案,此時輸入的8位二進位製數被成功用十進位制進行了輸出。

29樓:_死_性_不_改

按照如下步驟即可用c語言把二進位製數轉換成十進位製數的程式:

1、首先在主內函式中設定成容函式sum,另外定義了乙個陣列array[8],用於存放輸入的八位二進位製數。

2、然後使用了乙個for迴圈語句,用於輸入八位二進位製數。在scanf函式裡,在%d之間加乙個1,然後使用printf函式輸出,並且呼叫sum函式,陣列名作為實參。

3、在sum函式中,宣告了乙個power函式,在這裡n為指數,term為每一位數轉換為十進位制後的的數,如1*(2*2),sum為總和。

4、然後使用乙個for迴圈語句,i用於控制迴圈的次數,n從最高的指數7開始每次迴圈減一,如果指數大於或等於零的,就進行迴圈,呼叫power函式時,將n作為實參,最後將和返回。

5、在power函式中,如果b等於零,即指數為零,則返回1,否則就進入乙個迴圈,j用於控制迴圈次數。

6、最後看一下執行結果,這個c語言程式既可以把二進位製數成功轉換成十進位製數了。

30樓:匿名使用者

#include

int main()

// wut infomation school of engineering;

31樓:小八

隨便輸入一抄

個2進製bai

#include

#include

int main()

else

32樓:匿名使用者

#include

unsigned bintodec(char *a)

main()

33樓:

用位移.

10000001 == (1<<7)+1=128+1=129

用c語言編寫輸入二進位製數,輸出十進位製數

lude stdlib.h main x while x 0 printf d a x printf n system pause 再送你乙個進製 轉換的問題 把十進dao製數轉換為其它進製 include stdio.h include stdlib.h main px while px 0 pr...

編寫程式,將十進位制整數n轉換成二進位製數。本人初學C求指導

你這是c語言自 不是c include int main for i n 1 i 0 i printf d temp i 你要想下10進製zhi轉成2進製,是從最低位求起的,dao也就是求餘的結果要反過來,你拿筆自己算算看。這個要用到掩bai碼。du include int main 也可以用遞迴屬...

用c語言,輸入十進位製數,將其轉換為二進位製數並輸出

include void bin int n void main 已通過測試。望採納。include main n i 1 for i n i 0 i printf d b i printf n 你第二題怎麼寫的,第一題解出來沒,可不可以發給我 用c 輸入乙個十進位製數,將其轉換為二進位製數輸出。十...