精华内容
下载资源
问答
  • c语言输出二进制

    2020-05-05 18:36:24
    c语言十进制输出二进制方法: 除2取余再倒序,比较麻烦 用位运算符&直接得知某一位是0是1更直接高效 # include <stdio.h> void outBin(int a) { int len = sizeof(a)*8; //总位数 int i; //输出的位数 ...

    c语言十进制输出二进制方法:
    除2取余再倒序,比较麻烦
    用位运算符&直接得知某一位是0是1更直接高效

    # include <stdio.h>
    void Binary(int b);
    void show_B(int i);
    void outBin(int a)
    {
        int len = sizeof(a)*8; //总位数
        int i;	//输出的位数
        
        for (i=len-1; i>=0; i--) //去掉高位0
        {
            if(a&(1<<i)) break;	//将1左移i位并与n的每一位相比较
        }
    
        if (i == -1)
        {
             printf("0");
             return;
         }
     
        for (;i>=0; i--)
            printf("%d", (a&(1<<i)) != 0);  //按位与可以比较某一位上是0还是1
    }
    
    int main(void)
    {
    	int a = 0x7fffffff;
    	outBin(a);
    
    	return 0;
    }
    
    
    void show_B(int i)
    {
    	for (int s = 31; s>=0; --s)
    	{
    		if (i == 0)
    		{
    			printf("%d", 0);
    			break;
    		}else if ((1<<s & i) != 0)
    		{
    			for (; s>=0; --s)
    				printf("%d", (1<<s & i) != 0);
    		}
    	}
    	return;
    }
    //完整输出二进制
    void Binary(int b)
    {
    	int bit = 31;
    
    	while (bit >= 0)
    	{
    		printf("%d",((1<<bit) & b) != 0);
    		--bit;
    	}
    	printf("\n");
    	return ;
    }
    
    展开全文
  • c语言输出二进制表示

    2020-03-14 16:51:01
    //len:输出byte个数 void printBinary(unsigned char * str, u8 *a,int len) { printf("%8s:\n", str); int i,j; u8 t; for (i = 0; i < len; i++) { t = a[i]; printf("0x%02x : ",t); for (j = 0; j &...

    在这里插入图片描述

    //len:输出byte个数
    void printBinary(unsigned char * str, u8 *a,int len) {
     printf("%8s:\n", str);
     int i,j;
     u8 t;
     for (i = 0; i < len; i++) {
      t = a[i];
      printf("0x%02x : ",t);
      for (j = 0; j < 8; j++) {
       printf("%d ", t / 0x80);//取最高位
       t = t * 2;
      }
      printf("\n");
     }
     printf("\n");
    }
    int main()
    {
     u32 t1 =  0xffffffff;
     printBinary("temp",(u8*)(&t1),4);//将t1取地址,位(u32*),强制转换为(u8*)
     t1 = 0x12345678;
     printBinary("temp", (u8*)(&t1), 4);
     }
    展开全文
  • C语言 输出二进制

    千次阅读 2020-03-04 23:42:35
    #include<stdio.h> int Binary_number(int dec){ int result = 0,temp = 1,yushu = 0; while(1){ yushu = dec%2; dec/=2; result+=yushu*temp; temp*=10; if(dec<2) { ......
    #include<stdio.h>
    int Binary_number(int dec){
    	int result = 0,temp = 1,yushu = 0;
    	while(1){
    		yushu = dec%2;
    		dec/=2;
    		result+=yushu*temp;
    		temp*=10;
    		if(dec<2)
    		{
    			result+=dec*temp;
    			break;
    		}
    	}
    	
    	return result;
    	
    }
    int main(){
    	int num;
    	printf("Please input the number: ");
    	scanf("%d",&num);
    	printf("The Binary number is: %d\n",Binary_number(num));
    	return 0;
    }
    
    展开全文
  • C语言:二进制相加输出二进制

    千次阅读 2019-11-19 21:42:50
    二进制相加输出二进制 给定两个二进制字符串,返回他们的和(用二进制表示)。 输入为非空字符串且只包含数字 1 和 0。 示例 1: 输入: a = “11”, b = “1” 输出: “100” 示例 2: 输入: a = “1010”, b =...

    二进制相加输出二进制

    给定两个二进制字符串,返回他们的和(用二进制表示)。

    输入为非空字符串且只包含数字 1 和 0。

    示例 1:

    输入: a = “11”, b = “1”
    输出: “100”

    示例 2:

    输入: a = “1010”, b = “1011”
    输出: “10101”

    #include<stdio.h>
    #include<string.h>
    main()
    {
    	char a[101],b[101];
    	int m,n,i,j,k;
    	scanf("%s",a);
    	scanf("%s",b);
    	m=strlen(a);
    	k=n=strlen(b);
    	if(m>k) k=m;
    	a[k+1]=0;
    	for(i=0;i<k;i++)
    	    a[k-i]=a[m-i-1];
    	for(i=0;i<=k-m;i++)
    	    a[i]='0';
    	for(i=0;i<=k;i++)
    	    b[k-i]=b[n-i-1];
    	for(i=0;i<=k-n;i++)
    	    b[i]='0';
    	j=0;
    	for(i=0;i<k;i++)
    	{
    		j=(a[k-i]+b[k-i]+j-96);
    		a[k-i]=j%2+48;
    		j=j/2;
    	}
    	a[0]=j+48;
    	if(a[0]=='0')
    	    printf("%s\n",a+1);
    	else
    	    printf("%s\n",a);
    }
    展开全文
  • C语言中,控制printf函数输出格式的是格式字符,printf没有直接打出2进制数的格式符,直接打出16进制的格式符是x格式符,即%x。 printf函数中输出的格式为printf("<格式化字符串>", <参量表>),格式化...
  • C语言计算二进制数加法

    千次阅读 2020-09-07 21:18:12
    文章目录前言一、C语言二进制数加法计算测试结果 前言 在C语言中计算二进制数的加法 一、C语言二进制数加法计算 #include <stdio.h> #include <stdlib.h> #include <string.h> #include <...
  • C语言二进制输出问题

    千次阅读 2019-07-07 11:22:43
    C语言中没有直接将ACCII码以二进制格式输出的功能,需要自己设计,现在就请你来完成这个函数。 Input 输入由若干段字符组成,每一段由5个“”作为结尾;每一段中包含符合C语言规定的字符;若干段加起来总长度不超过...
  • 1、获取一个数二进制序列中所有的奇数位和偶数位,分别输出二进制序列。 思路: 在32位操作系统中我们将奇数和偶数位分别右移动,向右移动以后&amp;上一个1,这 样我们所输出的数字就都会是它本身。在32位操作...
  • 本文概述什么是十六进制?十六进制是一种位置系统,以16为基数表示十六个不同的符号中的数字。这些不同的符号,即“ 0-9”代表从零到九的值,...十六进制数= A12C相当于A的二进制值是1010等于1的二进制值是0001等于...
  • C语言中十进制以二进制形式输出

    万次阅读 2015-02-02 11:14:58
    C语言中我们通常有这样一种说法, 不管怎么写就看我们怎么读。 例如打印出一个整形的各种形式就有 printf("%o\n",a);...下面用代码展示一下打印出正数二进制形式#include void f(int n) { if(n) f(n/2)
  • C语言实现二进制数逆序排列 代码实现 test.c #include <math.h> #include <stdio.h> //输入:i 要变序的数 m 二进制的位数 //例:若输入为011(十进制数为3),则输出为110(十进制数为6) int ...
  • c语言中的二进制输出是没有占位符的,不像八进制:%o; 和十六进制:x%; c中二进制的输出 1 //右移31位,从最高为开始和1做&运算,得到每一位的二进制数值 2 void printbinry(int num) 3 { 4 int ...
  • 本次题目的要求为获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。其实仔细想想要获取一个数的二进制奇偶序列,那么我们就得知道它每一位上的数字,即这就是这道题的突破口,只要我们取得了每一...
  • C语言读写二进制

    千次阅读 2015-10-26 21:09:54
    看了网上好多二进制文件读写,简单是简单,但是语焉不详,好多同学都...原理是用一组掩码与要读出或写入的字符进行位运算,逐个写入或输出二进制码流。 没有注释,懒得写,抱歉。。。 下面上源码:#include <stdio.h
  • 给你一个二进制的数,请输出其十进制对应的数字。 原题链接 输入 输入一个二进制的非负整数N,保证在int范围内。 输出 输出转换后的数 样例 输入复制 1011 输出复制 11 输入复制 0 输出复制 0 输入复制 111...
  • #include void divideData(const float number, int &integer, float &decimal); //分离出整数和小数部分.void ... //打印整数部分的二进制形式.void printBinaryForDecimal(float &deci...
  • C语言二进制求补码过程中取反后再加1,那个1是怎么加的?跪求!以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!C语言二进制求补码过程中取反后再...
  • C语言——二进制转十六进制

    千次阅读 2018-12-02 00:13:03
    输入一个二进制的数,要求输出二进制数的十六进制表示。在十六进制的表示中,A~F表示10~15。 Input 第一行是测试数据的组数n,后面跟着n行输入。每组测试数据占一行,包括一个以0和1组成的字符串,字符串长度...
  • 问题描述:输入一个整型数a,计算这个数中在二进制存储方式下1的个数。程序分析:1.输入的整型数a在计算机中是以二进制的形式存储,我们采用的方法是逐位判断。2.当这个数a大于0时,将该数和1相与(按位与),如果相与...
  • 文章目录1、自定义的二进制... 细心的读者可能会发现,上表中没有二进制的输出格式,不能使用 printf函数输出二进制数。您可以编写函数把其它进制数字转换成二进制数字,并保存在字符串中,然后在printf 函数中使...
  • 突然想做一个十进制输入,输出相应的二进制数算法。 算法简介: 1、十进制转二进制通过位运算实现; 2、二进制数通过链表保存; 3、因为低位最先得到,所以链表用头插法实现(也可以直接用栈)。 代码如下: ...
  • C语言读写二进制文件

    千次阅读 2018-04-09 21:18:48
    //从文件读取二进制 FILE* fpin = NULL; if ((fpin = fopen("test.dat", "rb")) == NULL) { fprintf(stderr, "打开输入文件失败.\n"); return 0; } double fVal; fread(&fVal, 8, 1, fpin); printf("第...
  • /*整数的二进制转换程序*/  #include #include void binary(int num); int main(void) { int num,nums,numy,t,a;  int i = 0; int binary = 0; printf("请输入一个整数\n");  scanf("%d",&num);   a=n
  • //======================================//输出格式: hex2bin 5e.//得到: 0101 1110//======================================#include #include char *bitstr(char *, void const *, size_t);int main(int argc, ...
  • C++/C语言中十进制转二进制的常见方法

    万次阅读 多人点赞 2018-04-17 10:34:40
    用一个算法实现十进制数向二进制数转换,我们考虑得到7的二进制表示,奇数的二进制形式最后一位肯定是1,而偶数的二进制最后一位肯定是0。可以通过7%2来计算二进制最后一位数是0或者1。即对于十进制整数n而言,...
  • 文章目录一、二进制、八进制、十六进制整数的书写1、二进制2、八进制3、十六进制4、需要注意的坑二、二进制、八进制、十六进制整数的输出三、获取视频教程四、版权声明整数是我们生活中常用的数据类型,也是编程中...
  • c语言二进制输出

    千次阅读 2019-11-26 16:27:52
    我们知道c语言有10进制整形输出%d,八进制输出%o,但是就是没有二进制输出, 我们可以使用stdlib.h中自带的itoa函数: char *itoa (int value, char *str, int base );//base是进制,填2即可2进制转换 由于嵌入式的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 102,281
精华内容 40,912
关键字:

c语言输出二进制

c语言 订阅