[关闭]
@chawuciren 2018-10-23T02:27:15.000000Z 字数 611 阅读 573

New Binary

CSI


  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. void binary (int b[],int n);//输出某二进制数的补码
  4. void binarychar (int a[],char input) ;
  5. int main()
  6. {
  7. int before[32]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};//存储
  8. int n=0;
  9. scanf("%d",&n);//输入某数
  10. binary(before,n);
  11. for(int i=0;i<32;i++)
  12. {
  13. printf("%d\n",before[i]);//输出补码
  14. }
  15. return 0;
  16. }
  17. void binary (int a[],int n)
  18. {
  19. if(n>=0){ //n>0
  20. for(int i=31;i>=0;i--)
  21. {
  22. a[i]=n&1; //取最后一bit
  23. n=n>>1; //右移
  24. }
  25. }
  26. if(n<0){ //n<0
  27. n=2*2*2*2*2*2*2*2+n; //取补码
  28. for(int i=31;i>=0;i--)
  29. {
  30. a[i]=n&1
  31. n=n>>1;
  32. }
  33. return;
  34. }
  35. void binarychar (int a[],char input) //字符转化
  36. {
  37. char n='input'; //n>0
  38. for(int i=31;i>=0;i--)
  39. {
  40. a[i]=n&1; //取最后一bit
  41. n=n>>1; //右移
  42. }
  43. return ;
  44. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注