C语言中使用二进制形式输出

#include 〈stdio.h〉

int main(void)
{
    int userInt; //接收用户输入的无符号整型
    printf("请输入您要转换的整数:");
    scanf("%u", &userInt);
    int binArr[33] = {0}; //一个int类型为4字节32位,符号占一位
    int cElement = 0; //统计元素个数
    while(1){
        if(userInt == 0){
            binArr[0] = 0;
            break;
        }
        if(userInt != 1 || userInt != -1){
            binArr[cElement] = userInt % 2; //取2的余数
            userInt = userInt / 2; //将商作为新的数据进行处理
            cElement++;
        }
        if(userInt == 1){
            binArr[cElement] = userInt;
            break;
        }
        else if(userInt == -1){
            binArr[cElement] = 1;
            cElement++;
            binArr[cElement] = 1; //符号位1
            break;
        }
    }
    printf("您的二进制数为:");
    for( ; cElement 〉= 0; cElement--){
        printf("%d", arr[cElement]);
    }
    printf("B\n");
    return 0;
}

C语言中使用二进制形式输出

时间: 2024-10-13 12:13:59

C语言中使用二进制形式输出的相关文章

C语言中以字符串形式输出枚举变量

C语言中以字符串形式输出枚举变量 摘自:https://blog.csdn.net/haifeilang/article/details/41079255 2014年11月13日 15:17:20 haifeilang 阅读数:6295 每个枚举常量对应一个整形数字,很多时候可以像整形一样使用,这个大家都知道:但是如果要求打印枚举变量名的字符串,办法也有很多,查看网上方法几乎都需要转换,要么用数组,下面要说的是一种可以算是直接打印的新方法: #会将后面的内容作为字符串返回 如果想让#后面的内容作

char类型变量二进制形式输出

C语言char类型(1字节)以二进制形式输出: #include<stdio.h> void chrtobit(char chr)/* chr是要以二进制形式输出的char值*/{ char tchr=chr; int i; for(i=7;i>=0;i--) { char tmpc=tchr; tmpc=tchr&(1<<i); printf("%d",tmpc>>i); } printf("\n");}

int类型变量以二进制形式输出

C语言int类型(4字节)以二进制形式输出: #include<stdio.h> void intobit(int num)/*num是要以二进制形式输出的int值将二进制数据逐个置1,在右移,依次实现逐个输出*/{ int tnum=num; int i; for(i=31;i>=0;i--) { int tmpa=tnum; tmpa=tnum&(1<<i); ((i+1)%8==0&&i!=31)?printf(" %d",t

Android For JNI(二)——C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器

Android For JNI(二)--C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器 当我们把Hello World写完之后,我们就可以迈入C的大门了,今天就来讲讲基本的一些数据类型,函数之内的 我们先来看一张传播久远的图片' 一.各种数据类型介绍 整型 整形包括短整型.整形和长整形. 短整形 short a=1; 整形 一般占4个字节(32位),最高位代表符号,0表示正数,1表示负数,取值范围是-2147483648~2147483647,在内存中的存储顺序是地位在前.高位在

获取内存中整数二进制形式

采用移位和相与方式求整数在内存中的二进制形式. #include<stdio.h> typedef int DataType; int num_covert_binary(DataType num); void main() { DataType num; num = -1; num_covert_binary(num); num = 12; num_covert_binary(num); getchar();//让console 等待一下 } int num_covert_binary(Da

C语言中十进制以二进制形式输出

在C语言中我们通常有这样一种说法, 不管怎么写就看我们怎么读. 例如打印出一个整形的各种形式就有 printf("%o\n",a);八进制 printf("%n\n",a);十进制 printf("%x\n",a);十六进制 唯独没有打印出二进制 下面用代码展示一下打印出正数二进制形式 #include <stdio.h> void f(int n) { if(n) f(n/2); else return; printf("

将一个字符(char)或者一个整形(int)的二进制形式输出

要输出一个数的二进制形式使用位操作  >> 和 & void putBinary(int number)//将一个int整形数字的二进制形式正序,倒序输出 { int value; int i; for (i = 31; i >= 0;i--)//正序 { int value = number >> i & 1; printf("%d", value); } printf("\n"); for (i = 0; i <

【C语言】《C Primer Plus》递归:以二进制形式输出整数

/* binary.c -- prints integer in binary form */#include <stdio.h>void to_binary(unsigned long n); int main(void){ unsigned long number; printf("Enter an integer (q to quit):\n"); while (scanf("%ul", &number) == 1) { printf(&q

C语言 打印变量在内存中的二进制形式(补码)

void show_bits(int n) { int i = 0; for(i=0;i<32;i++) printf("%d",(n&(1u<<(31-i)))!=0?1:0); putchar('\n'); } 整数的原码 = 整数的补码 负数的补码:(原码)->(反码)->(反码+1) 负数的原码:(补码-1)->最高位符号位别动其余均转反码