這篇文章主要介紹了怎么在C語言項目中利用棧將十進制轉(zhuǎn)換為二進制,此處通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考價值,需要的朋友可以參考下:
十載的河源網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調(diào)整河源建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)從事“河源網(wǎng)站設計”,“河源網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
具體如下:
#include<stdio.h> #include<malloc.h> #include<math.h> #include<string.h> #include "process.h" #define SIZE 100 #define STACKINCREMENT 10 #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 typedef int Status; typedef struct { int a; } SElemType; typedef struct { SElemType *base; SElemType *top; int stacksize; } SqStack; SqStack S; //定義全局變量 Status InitStack(SqStack *S) { S->base=(SElemType *)malloc(SIZE*sizeof(SElemType)); if(!S->base) exit(OVERFLOW); S->top=S->base; S->stacksize=SIZE; return OK; } Status Push(SqStack *S,SElemType e) { if(S->top-S->base>=S->stacksize) { S->base=(SElemType *)malloc((S->stacksize+STACKINCREMENT)*sizeof(SElemType)); if(!S->base) exit(OVERFLOW); S->top=S->base+S->stacksize; S->stacksize+=STACKINCREMENT; } *S->top++=e; //printf("%dwww\n",*--S->top); return OK; } Status Stackempty(SqStack *S) { if(S->top==S->base) return TRUE; else return FALSE; } Status Pop(SqStack *S,SElemType *e) { if(S->top==S->base) return ERROR; *e=*--S->top; return OK; } Status DtoBTrans(int N,SqStack *S) { SElemType e; while(N) { e.a=N%2; Push(S,e); N=N/2; } while(!Stackempty(S)) { Pop(S,&e); printf("%d",e); } return OK; } void main() { int x; InitStack(&S); printf("請輸入十進制數(shù):"); scanf("%d",&x); DtoBTrans(x,&S); }
運行結(jié)果:
到此這篇關(guān)于怎么在C語言項目中利用棧將十進制轉(zhuǎn)換為二進制的文章就介紹到這了,更多相關(guān)內(nèi)容請搜索創(chuàng)新互聯(lián)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持創(chuàng)新互聯(lián)!
本文題目:怎么在C語言項目中利用棧將十進制轉(zhuǎn)換為二進制
當前鏈接:http://muchs.cn/article24/ghscje.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站改版、企業(yè)建站、網(wǎng)站策劃、網(wǎng)站制作、面包屑導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)