精品偷拍一区二区三区,亚洲精品永久 码,亚洲综合日韩精品欧美国产,亚洲国产日韩a在线亚洲

  • <center id="usuqs"></center>
  • 
    
  • c語(yǔ)言 將十進(jìn)制數(shù)用算法轉(zhuǎn)換成其它進(jìn)制

    c語(yǔ)言 將十進(jìn)制數(shù)用算法轉(zhuǎn)換成其它進(jìn)制
    轉(zhuǎn)化為二進(jìn)制、八進(jìn)制和十六進(jìn)制.重點(diǎn)是一定要用算法.
    其他人氣:239 ℃時(shí)間:2020-07-21 05:28:39
    優(yōu)質(zhì)解答
    這個(gè)是用 求余來(lái)算,比如求十進(jìn)制數(shù) x(x>100) 的8進(jìn)制,先通過(guò) x%8 可以得到個(gè)位(末位)上的數(shù)(你可以思考一下,為什么是求余得到的結(jié)果作為個(gè)位,當(dāng)十進(jìn)制數(shù)等于8時(shí),必然會(huì)進(jìn)位,求余的結(jié)果正好是不能進(jìn)位的部分),再 x=x/8(這就像位移,x的8進(jìn)制數(shù)向右移了一位),這樣已經(jīng)求出來(lái)的 個(gè)位 位移后沒有了,原來(lái)的十位變成了個(gè)位,繼續(xù)把得到的x按上面的方式求末位,就能求出來(lái)十位,按照這種方式得到的 8進(jìn)制數(shù) 是反的(先得到個(gè)位,再十位.),這樣很適合放到棧中,取得時(shí)候又會(huì)反過(guò)來(lái),偽代碼可以這樣寫
    while(x){
    printf("%d",x%n);//會(huì)打印出x轉(zhuǎn)換為 N進(jìn)制數(shù) 從低位到高位上的每一位數(shù)
    x/=n;
    }
    以前我用棧寫過(guò)一個(gè)十進(jìn)制轉(zhuǎn)換N進(jìn)制的,
    #include
    #include
    #include
    typedef int INT;
    typedef struct dd
    {
    INT data;
    struct dd *next;
    }LNode,*LStack;
    LStack pushstack(LStack top,int x)
    {
    LStack p;
    p=(LStack)malloc(sizeof(LNode));
    if((x)!=-1) {p->data=(x);
    p->next=top;
    top=p;}
    return top;
    }
    LStack outstack(LStack top,int *x)
    {
    LStack p=top;
    *x=p->data;
    top=p->next;
    free(p);
    return top;
    }
    main()
    {
    int x,n;
    LStack top=NULL;
    printf("請(qǐng)輸入原數(shù)及要轉(zhuǎn)換的進(jìn)制:");
    do{
    scanf("%d%d",&x,&n); //輸入一個(gè)十進(jìn)制數(shù)和要轉(zhuǎn)換的進(jìn)制,比如3 2 得到11
    }while(x>35||x
    我來(lái)回答
    類似推薦
    請(qǐng)使用1024x768 IE6.0或更高版本瀏覽器瀏覽本站點(diǎn),以保證最佳閱讀效果。本頁(yè)提供作業(yè)小助手,一起搜作業(yè)以及作業(yè)好幫手最新版!
    版權(quán)所有 CopyRight © 2012-2024 作業(yè)小助手 All Rights Reserved. 手機(jī)版