#include#include#include<数学.h>unsigned long int puiss(unsigned long int x, int n){ if(n == 0) 返回 1; if(n == 1) 返回 x; 无符号长整月 x2 = 幂(x,n/2); if(n%2 == 0) 返回 x2*x2; 返回 x2 * x2 * x;}int char_to_int(char d){ 字符链[2]; str[0] = d; str[1] = '\0'跨度>; 返回 (int) strtol(str, NULL, 10);}unsigned int convertirEnBase10(int binary){ 字符 snum[20]; // 转换为 String ITOA(二进制,snum,10); // 有多少个字符? int nc = log10((int)二进制)+1; int decimal = 0; for(int i = nc-1 ; i >= 0; i--) { 十进制 += char_to_int(snum[i]) * puiss( 2, (nc-1)-i); } 返回十进制;} int main(){ 二进制整数; while(true) { printf(输入二进制数”); scanf(%d”,&二进制); printf (%ld 在 base 2 = %ld 在 base 10\n”,二进制,convertInBase10(二进制); } 返回 0;}
Commentaires (0)
Laisser un commentaire
Connectez-vous pour commenter
Rejoignez la discussion et partagez vos connaissances avec la communauté
Chargement des commentaires...