ffffffff轉化為二進位制_棧和佇列--十進位制轉化為二進位制
阿新 • • 發佈:2021-02-13
技術標籤:ffffffff轉化為二進位制
需求:編寫程式使十進位制轉換成為二進位制
分析:十進位制轉換二進位制。如圖,只需要不斷除以2,然後將餘數逆置即可,我們可以將餘數依次輸入到棧中,利用棧先進後出的特性,再將棧中元素輸出即可得到二進位制序列
int transform(int n){ int stack[MAXSIZE],top = -1; int temp = n; int a;//a用來記錄每次相除得到的結果 while(temp != 0){ a = temp % 2; temp = temp / 2; stack[++top] = a; } // //出棧輸出二進位制 // while(top != -1){ // printf("%d",stack[top--]); // } //也可以寫為返回整形的形式 int result = 0; while(top != -1){ result = result * 10 + stack[top--]; } return result; printf("%d",result); }