1樓:匿名使用者
||#include
#include
#include
int readnumber(char* input, int base)
if (base < 2 || base > 16)
int number = 0;
for (int i = 0; i < inputlength; i++)
else if (c >= 'a' && c <= 'f')
else if (c >= 'a' && c <= 'f')
else
if (d >= base)
number *= base;
number += d;
if (number < 0)
}return number;
}char* writenumber(int number, int base)
char buffer[128];
int index = 127;
buffer[index--] = 0;
doint d = number % base;
number /= base;
if (d <= 9)
else
} while (number != 0);
index++;
int outputlength = strlen(buffer + index);
char* output = (char*) malloc(outputlength + 1);
memcpy(output, buffer + index, outputlength + 1);
return output;
}void main()
else
else
}rewind(stdin);
printf("\n按回車鍵退出\n");
getchar();}
程式設計實現將任意的十進位制整數轉換成r進位制數【r在2-16之間
2樓:快先帶兒子走
//滿意望採納~
#include
int main()
for(int j=i-1; j>=0; j--)case 11:
case 12:
case 13:
case 14:
case 15:
}printf("%d",bin[j]);}}
3樓:定湛談嘉志
我的思路:用一個字串儲存轉換的結果(str[80)假設十進位制數為number,轉換的進製為digits,則將numbers%digits(根據餘數的情況做相應處理)結果儲存在字串str中,將numbers變為numbers/digits;直到numbers為零。得到的結果為逆序,需要將其倒轉,倒轉後即為所求。
//-----------c語言實現10進位制轉2~16進位制#include
#include
void
tentoany(int
number,char
*str,int
digits)
number=number/digits;
}str[i]='\0';
strrev(str);//strrev函式定義在string.h中的,是對字串做逆序處理的函式
//這裡需要逆序的原因是因為得到的結果為該進位制的逆序}int
main()
return0;}
上面的的switch語句也可替換為如下**:
if(number%digits>=10)else
什麼是vc他是一種程式語言還是編譯軟體
vc 全稱是microsoft visual c 屬於c 程式語言中的一種。是microsoft公司推出的開發win32環境程式,物件導向的視覺化整合程式設計系統。它不但具有程式框架自動生成 靈活方便的類管理 編寫和介面設計整合互動操作 可開發多種程式等優點,而且通過簡單的設定就可使其生成的程式框架...
什麼是VC他是一種程式語言還是編譯軟體
microsoft visual c 是microsoft公司推出的開發win32環境程式,物件導向的視覺化整合程式設計系統。它不但具有程式框架自動生成 靈活方便的類管理 編寫和介面設計整合互動操作 可開發多種程式等優點,而且通過簡單的設定就可使其生成的程式框架支援資料庫介面 ole2,winsoc...
c語言程式設計實現snaaaaaaaa
ls兄弟們考慮過沒有,如果a 10怎麼辦?我在csdn見過這題,lz如果需要a 10的解決辦法就補充一下問題,我寫給你,不用就算了。貌似這個好像是兩重迴圈就搞定了。long sum sum 0 int a,tmp a 1 tmp a for int i 0 i main printf ld sn c...