输入一个十进制整数,将它对应的二进制数各位反序, 形成新的十进制数输出。

作者&投稿:烛福 (若有异议请与网页底部的电邮联系)
输入一个十进制整数,将它对应的二进数的各位反序,形成新的十进制数输出。~

# include
void main()
{ int x,y,t;
printf(“输入一个十进制数:”);
scanf(“%d”,&x);
y=0;
while( x!=0 ){
t=x%2;
y=2*y+t ;
x=x/2;
}
printf(“新的十进制整数为%d
”,y);
}

还是按你的逻辑,帮你修改了一下,请看,亲测。。。#includevoid testff(int a){ int b; b =a%2; a =a/2; if(a!=0) testff(a); printf("%d",b);}void main(){ int a; scanf("%d",&a); testff(a);}

#include <stdio.h>
#include <math.h>

main()
{
__int64 x=0,sum=0;
int n=0,tmp=0;
scanf("%I64d",&x);
if(x<0)return 0;
sum=x;
while(x>0){x>>=1;n++;} 
x=sum;sum=0;
while(x>0)
{
tmp = x % 2;
printf("%d",tmp);
sum+=tmp*pow(2,n-1);
x>>=1;
n--;


printf("
%I64d
",sum);
}



一道c语言编程题,将十进制转换为二进制
2、定义数组和变量:#include <stdio.h>#include <stdlib.h>void main(){int i, j, n, m;*定义变量i,j,n,m*\/int a[16] ={0}\/*定义数组a,元素初始值为0*\/system("cls");\/*清屏*\/。3、输入十进制数:printf("请输入一个十进制数(0~32767):\\n");scanf("%d", &n);\/*输入n...

用C语言编一个将十进制整数转化为16进制数的程序
最简单的,不涉及算法的作法就是用printf的输出格式 %x 输出16进制 x 输出小写的a、b、c、d、e、f %X输出大写的A、B、C、D、E、F include"stdio.h"int main(){ int a;printf("请输入一个10进制整数:" );scanf( "%d", &a);printf("该数转换为16进制数为: %X\\n",a);return...

"由键盘输入一个小于256的十进制正整数,然后将该数转换成八位的二进 ...
include "stdio.h"int main(){ int i;int j = 128;scanf("%d", &i);while(j > 1){ if(i\/j == 1){ printf("1");} else printf("0");i = i % j;j = j\/2;} printf("%d", i);}

输入一个十进制数,输出对应的n进制数( 2<=n<=16) 下面代码有错误,哪...
huan(int num, int n){ int i,j=0;char s[Size];while(num!=0){ i=num%n;num=num\/n;s[j++]=a[i];\/\/s[i] 有误,这里的i是跳动的,即i=num%n,所以用j来实现 } for(i=j-1;i>=0;i--)printf("%c",s[i]);\/\/不能把return放在循环里面,一个函数只能返回一个值,...

c语言编写一个程序,将十进制整数n 转换成二进制数
include <stdio.h> int transfer(int x){ int p=1,y=0,yushu;while(1){ yushu=x%2;x\/=2;y+=yushu*p;p*=10;if(x<2){ y+=x*p;break;} } return y;} void main(){ \/\/进制转换函数的声明 int transfer(int x);int x;printf("请输入一个十进制数:");scanf("%d",&x);pri...

各位大哥帮忙做个java作业:用键盘输入一个十进制数编程翻译成二进制数...
System.out.println("输入的十进制数:"+input);\/\/ 输出转化结果 System.out.println("转化为"+type+"进制数:"+result);} \/ 排序方法,使用快速排序法 \/ public static void sort(int[] arr) { int size = arr.length;for (int i = 0; i < size; i++) { for (int j = i; j...

请问这个C语言的题目的完整回答
%o 读入八进制整数%x 读入十六进制整数%X 同上%c 读入一个字符%s 读入一个字符串%f 读入一个浮点数%F 同上%e 同上%E 同上%g 同上%G 同上%p 读入一个指针%u 读入一个无符号十进制整数%n 至此已读入值的等价字符数%[] 扫描字符集合%% 读%符号附加格式说明字符表修饰符 说明L\/l 长度修饰符 输入"长"数据h ...

scanf("%s",&a);的输入语句有包括空格吗?
printf("%d%f%s",a,b,c);或者 printf("%d%f",a,b);这里的 a 对应的是 %d 是表示 以十进制整数形式输出a 这里的 b 对应的是 %f 是表示 以浮点数形式输出b c对应的是 %s 是表示以字符串形式输出c scanf("%d%f",&a);这里的a对应的是%d,即必须输入一个十进制整数 输入一个整数后 这...

求一个C语言程序使输入一个数能显示出计算出它的原码和补码并显示出来...
include<stdio.h> include<stdlib.h> include<math.h> include<conio.h> void convert(int num);void oppose(int n);int a[16];void main(void){ int num,jdz;char ans;while(1){ printf("请输入任意一个十进制整数: ");scanf("%d",&num);printf("\\n");printf("其绝对值为: ");...

求编程: 试编写程序,将用户输入的一个十进制正整数转化为十六进制输出...
include <stdio.h> void put(int);void convert(unsigned long int ,unsigned long int);void main(){ unsigned long int sort;unsigned long int n;do { printf("Please enter two numbers n and sort");printf("\\n n 代表你要转化的十进制正整数:");scanf("%ld",&n);printf("\\n...

桐梓县13739681140: 输入一个十进制整数,将它对应的二进制数的各位反序,形成新的十进制数输出. 请大神解释一下思路.while(x!=0){ t=x%2; y=2*y+t; x=x/2; 看了答案明白,但... -
父河舒秦:[答案] 题目中的反序,是用““二进制””进行的,用““十进制数””来说明思路,也许能好理解. 看下面的计算过程: x = 385; y = 0; while(x != 0){ t = x % 10; //t = 5 t = 8 t = 3 y = 10 * y + t; //y = 5 y = 58 y = 583 x = x / 10; //x = 38 x = 3 x = 0 } 循环三次,中间...

桐梓县13739681140: 将一个输入的十进制整数转换成二进制 -
父河舒秦: ns:=''1'; while n&gt:='+ans; n:=n div 2; end;0 do begin if n mod 2 == 0 then ans:='0'+ans else ans

桐梓县13739681140: 输入一个十进制数,将其转换为二进制输出 -
父河舒秦: 强制格式转换就行了,直接在输出时%0就行了啊

桐梓县13739681140: 6.输入一个十进制整数,将它对应的二进数的各位反序,形成新的十进制数输出. -
父河舒秦: 131 1 0 12^3*1 2^2*1 2^1*0 2^0*1二进制中,乘以2相当于把数左移一位.算出来的t是从高位开始的,这样每次左移一位给低位腾出一个位置.

桐梓县13739681140: 输入一个十进制整数,输出其对应的二进制数,用C语言的函数知识. -
父河舒秦: 问题大着呢,你只返回了一个数而已,应该返回一个数组 #include<stdio.h> void main() {void fun(int m,int *j,int c[]);int m;int i;int c[100]={0};//用来装二进制数int count = 0;//用来统计有效位数printf("输入一个十进制整数:\n");scanf(...

桐梓县13739681140: 输入一个十进制整数,将它对应的二进制数各位反序, 形成新的十进制数输出. -
父河舒秦: #include <stdio.h> #include <math.h>main() { __int64 x=0,sum=0; int n=0,tmp=0; scanf("%I64d",&x); if(x<0)return 0; sum=x; while(x>0){x>>=1;n++;} x=sum;sum=0; while(x>0) { tmp = x % 2; printf("%d",tmp); sum+=tmp*pow(2,n-1); x>>=1; n--;} printf("\n%I64d\n",sum); }

桐梓县13739681140: 如何把十进制数字转换为二进制数字?
父河舒秦: 十进制整数转二进制: 就是把该十进制数,用二因式分解,取余. 以12为例,转为二进制 2除以12得6,余0,取0 2除以6得3,余0,取0 2除以3得1,余1,取1 最后剩下1,由它开始写起,就可得1100的二进制结果 十进制中的小数转为二进制:, 就是把该小数不断乘2,再取所得的整数部份,直至没有小数为止,但请注意并不是所有小数都能转到! 以0.875为例, 0.875剩以2得1.750,取整数1 0.750剩以2得1.500,取整数1 0.500剩以2得1,取整数1,就可得0.111的二进制结果

桐梓县13739681140: 用C 语言编程.任意输一个十进制数将其转换为二进数并输出 -
父河舒秦: main { int a,b,c=0,d[]; while(a!=0) {b=a%2;a=a/2; d[c]=b;c++; }for(;c>0;c--) printf("%d",d[c]); }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网