C語言二進制轉化為十進制源碼


#include<math.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define N 33

int input(int);
char a[N];                                                              

main()
{
    int i,n,sum=0;
  
    n=input(1);
    for(i=n-1;i>=0;i--)                                                    //二進制輸入檢錯
    {
        if((a[i]-'0')!=1&&(a[i]-'0')!=0)
            n=input(0);
    }

    for(i=n-1;i>=0;i--)                                                    //二進制轉換十進制
        sum+=(a[i]-'0')*((int)pow(2,n-1-i));
    printf(">>轉換后的十進制數為:\n%d\n",sum);
    system("pause");
}

int input(int m)
{
    printf(">>%s輸入一個二進制數:\n",m?"請":"輸入有誤,請重新");
    scanf("%s",a);
    return strlen(a);

}

 

2011-01-10


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM