用c语言编写函数把任意十进制数转换成二进制数
\u7528c\u8bed\u8a00\u7f16\u5199\u51fd\u6570\u628a\u4efb\u610f\u5341\u8fdb\u5236\u6570\u8f6c\u6362\u6210\u4e8c\u8fdb\u5236\u6570C\u8bed\u8a00_010_\u4e8c\u8fdb\u5236\u8f6c\u5341\u8fdb\u5236_\u4e0a
1\u3001\u6253\u5f00visualC++6.0-\u6587\u4ef6-\u65b0\u5efa-\u6587\u4ef6-C++SourceFile\u3002
2\u3001\u8f93\u5165\u9884\u5904\u7406\u547d\u4ee4\u548c\u4e3b\u51fd\u6570\uff1a
#include /*\u8f93\u5165\u8f93\u51fa\u5934\u6587\u4ef6*/
voidmain()/*\u7a7a\u7c7b\u578b\uff1a\u4e3b\u51fd\u6570*/
3\u3001\u5b9a\u4e49\u53d8\u91cf\u548c\u6570\u7ec4\u7684\u6570\u636e\u7c7b\u578b\u5e76\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236\uff1a
intb[16],x,k,r,i;/*\u5b9a\u4e49\u53d8\u91cf\u548c\u6570\u7ec4\u7684\u6570\u636e\u7c7b\u578b\u4e3a\u6574\u578b*/
printf("\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236:");/*\u8f93\u51fa\u6587\u5b57\u63d0\u793a*/
scanf("%d",&x); /*\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236\u6570\u5b57*/
k=-1;/*\u5c06-1\u8d4b\u7ed9k*/
4\u3001\u7528\u9664R\u53d6\u4f59\u5012\u8ba1\u6cd5\u5c06\u5341\u8fdb\u5236\u7684\u6570\u8f6c\u5316\u6210\u4e8c\u8fdb\u5236\u7684\u6570\uff1a
do/*\u7528\u5faa\u73af\u5c06\u5341\u8fdb\u5236\u7684\u6570\u8f6c\u5316\u6210\u4e8c\u8fdb\u5236\u7684\u6570*/
{
r=x%2;/*\u7528\u9664R\u53d6\u4f59\u5012\u8ba1\u6cd5\u8ba1\u7b97\u4e8c\u8fdb\u5236*/
b[++k]=r;/*\u5c06\u503c\u8d4b\u7ed9\u6570\u7ec4*/
x/=2;/*\u5c06\u539f\u6570\u96642*/
}while(x>=1);
5\u3001\u8f93\u51fa\u7ed3\u679c\uff1a
for(i=k;i>=0;i--) /*\u5c06\u4e0a\u9762\u5012\u8ba1\u7684\u6570\u6b63\u56de\u6765*/
printf("%d",b[i]);/*\u8f93\u51fa\u7ed3\u679c*/
printf("\n");
6\u3001\u5b8c\u6574\u7684\u6e90\u4ee3\u7801\uff1a
#include /*\u8f93\u5165\u8f93\u51fa\u5934\u6587\u4ef6*/
voidmain()/*\u7a7a\u7c7b\u578b\uff1a\u4e3b\u51fd\u6570*/
{
intb[16],x,k,r,i;/*\u5b9a\u4e49\u53d8\u91cf\u548c\u6570\u7ec4\u7684\u6570\u636e\u7c7b\u578b\u4e3a\u6574\u578b*/
printf("\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236:");/*\u8f93\u51fa\u6587\u5b57\u63d0\u793a*/
scanf("%d",&x); /*\u8f93\u5165\u4e00\u4e2a\u5341\u8fdb\u5236\u6570\u5b57*/
k=-1;/*\u5c06-1\u8d4b\u7ed9k*/
do/*\u7528\u5faa\u73af\u5c06\u5341\u8fdb\u5236\u7684\u6570\u8f6c\u5316\u6210\u4e8c\u8fdb\u5236\u7684\u6570*/
{
r=x%2;/*\u7528\u9664R\u53d6\u4f59\u5012\u8ba1\u6cd5\u8ba1\u7b97\u4e8c\u8fdb\u5236*/
b[++k]=r;/*\u5c06\u503c\u8d4b\u7ed9\u6570\u7ec4*/
x/=2;/*\u5c06\u539f\u6570\u96642*/
}while(x>=1);
for(i=k;i>=0;i--) /*\u5c06\u4e0a\u9762\u5012\u8ba1\u7684\u6570\u6b63\u56de\u6765*/
printf("%d",b[i]);/*\u8f93\u51fa\u7ed3\u679c*/
printf("\n");
}
输入整数(0结束) : 10
10 = (1010)2
输入整数(0结束) : 127
127 = (1111111)2
输入整数(0结束) : 255
255 = (11111111)2
输入整数(0结束) :
*/
#include <stdio.h>
#include <stdlib.h>
char *Converse(char s[],int n) {
int i,ch,m = 0;
while(n) {
s[m] = n%2 + '0';
n /= 2;
++m;
}
s[m] = '\0';
for(i = 0; i < m/2; ++i) {
ch = s[i];
s[i] = s[m - 1 - i];
s[m - 1 - i] = ch;
}
return s;
}
int main() {
int num;
char s[20];
while(1) {
printf("输入整数(0结束) : ");
scanf("%d",&num);
if(num == 0) break;
if(num < 0) num = -num;
printf("%d = (%s)2\n",num,Converse(s,num));
}
system("PAUSE");
return 0 ;
}
for(i=0; n<16; i++) //转化为二进制
还有这
for(i=0; n>=1; i++)
中间的n 都应该改成 i 吧?
for(i=0;n<16;i++) //转化为二进制
为什么是n<16??
绛旓細杈撳叆鏁存暟(0缁撴潫) : 10 10 = (1010)2 杈撳叆鏁存暟(0缁撴潫) : 127 127 = (1111111)2 杈撳叆鏁存暟(0缁撴潫) : 255 255 = (11111111)2 杈撳叆鏁存暟(0缁撴潫) :/ include <stdio.h> include <stdlib.h> char *Converse(char s[],int n) { int i,ch,m = 0;while(n) { s[m] = n%2 + '0...
绛旓細include<stdio.h> main(){ int i,n,k,x[10];scanf("%d",&n);for(i=0;n!=0;i++)//n涓嶇瓑浜0鏃...{ x[i]=n%2;n=n/2;} for(k=i-1;k!=(-1);k--)//k鍒濆鍊间负i-1锛宬鐨勬潯浠朵负涓嶇瓑浜-1 printf("%d",x[k]);//杈撳嚭x[k]锛岃屼笉鏄痻[i]} ...
绛旓細鎶婁换鎰忓崄杩涘埗姝f暣鏁拌浆鎹㈡垚浜杩涘埗鏁杈撳嚭鐨鍑芥暟濡備笅锛歱ublic class TenToTwo { public static void main(String[] args) { System.out.println("鍗佽繘鍒惰浆鎹负浜岃繘鍒剁粨鏋滀负锛");getTwo(17);} public static void getTwo(int n){ List<Integer> list = new LinkedList<>();while (n!=0){ list...
绛旓細//鏈绗﹀悎棰樻剰鐨勭瓟妗堬紝娌℃湁瓒呰繃鏈珷鐭ヨ瘑鐐癸紝鍙互瀹屽叏鍗囩骇涓嬮潰鐨勭瓟妗堬紝绠娲佹槑浜 include<stdio.h> int tow(int *,int);int tow(int a[],int n){int yu=0;while(n!=0){ a[yu]=n%2;n=n/2;yu++;} return yu;} int main(){ int a[10000],num,n;printf("input num:");scanf(...
绛旓細include "stdio.h"main(){ unsigned int i;scanf("%d", &i);printf("\n OCT:%o, HEX:%X\n", i, i);}
绛旓細void main(void){ int nDec,nArry[33]={NULL,},x=0;;unsigned i;printf("璇疯緭鍏ヤ竴涓鍗佽繘鍒鏁存暟...\n杈撳叆鐨勬暣鏁版槸:nDec=");scanf("%d",&nDec);printf("瀵瑰簲鐨勪簩杩涘埗鏄:");if(!nDec) printf("%d",*nArry=0);else{ for(i=0x80000000;!(i&nDec);i>>=1);for(;i;i>>=1)print...
绛旓細/*2銆缂栫▼瀹炵幇灏嗕换鎰鐨鍗佽繘鍒鏁存暟杞崲鎴怰杩涘埗鏁(R鍦2-16涔嬮棿)銆*/ #include <stdio.h> int a[8]; int main() { int n,j; void binary(int n); printf("please input the number:"); scanf("%d",&n); printf("the number you want to transform:"); scanf("%... 灞曞紑 demax...
绛旓細int i,p[30]={0};p[0]=a;for(i=1;i<30;i++){ p[i]=p[i-1]/n;p[i-1]%=n;} for(i=29;i>=0;i--)if(p[i]!=0)break;for(;i>=0;i--)printf("%d ",p[i]);} int main(){ int a,n;printf("杈撳叆涓涓暣鏁癨n");scanf("%d",&a);printf("杈撳叆瑕佽浆鎹㈢殑杩...
绛旓細void change(){ int n;//n灏辨槸浣犺杞崲鐨鍗佽繘鍒舵暟 char ch[10]={'\0'};while(i<10){ if(n%16==0)ch[i]=0;else ch[i]=n%16;i++;} int len=char.length();for(int i=len-1;i>=0;i--)sprintf("%c",ch[i]);} ...
绛旓細include <stdio.h>main(){ int a; printf("Please input a Number\n"); scanf("%d",&a); printf("Out:"); while(a>0) { printf("%d",a%10); a=a/10; } return 0;}