精华内容
下载资源
问答
  • 解决思路是无论说是什么进制,内存中都是二进制存储的,设法把它原样打出来即可——#include "stdio.h"#include #include "time.h"#define N 24void showbinary(int *p,int n){//二进制输出函数int i,j,k;...

    为简化代码,这里原数据选择用rand函数自动生成。解决思路是无论说是什么进制,内存中都是二进制存储的,设法把它原样打出来即可——

    15ea031cec69dc7bceffe02601fbc53b.png

    #include "stdio.h"

    #include

    #include "time.h"

    #define N 24

    void showbinary(int *p,int n){//二进制输出函数

    int i,j,k;

    char *q;

    for(i=0;i

    for(q=(char *)p+3,j=0;j<4;j++,q--)

    for(k=0x80;k;k>>=1)

    putchar(!!(*q&k)+'0');

    putchar(i&1 ? '\n' : ' ');

    }

    }

    int main(int argc,char *argv[]){

    int a[N],i;

    srand((unsigned)time(NULL));

    puts("The original data:");

    for(i=0;i

    printf((i+1)%6 ? "%9X" : "%9X\n",a[i]=rand()*65536+rand());

    if((i)%6)

    putchar('\n');

    puts("\nBinary output:");

    showbinary(a,N);

    return 0;

    }

    展开全文
  • C语言中十进制以二进制形式输出

    万次阅读 2015-02-02 11:14:58
    C语言中我们通常有这样一种说法, 不管怎么写就看我们怎么读。 例如打印出一个整形的各种形式就有 printf("%o\n",a);...下面用代码展示一下打印出正数二进制形式#include void f(int n) { if(n) f(n/2)

    关注更多请扫码关注:

    在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("%d\n",n%2); 
    } 
    
    int main(void)
    {	
    	int n; 
    	while(1) 
    	{ 
    		scanf("%d",&n); 
    		if(n<0) break; 
    		if(n==0) printf("0"); 
    		f(n); 
    		printf("\n"); 
    	} 
    	return 0;
    }
    

     

    展开全文
  • C语言中实现十进制转二进制输出

    万次阅读 2019-05-17 15:30:28
    众所周知,C中八进制,十进制和十六进制都可以通过%o,%d和%x轻松实现,然而唯独没有提供二进制输出的快速方式。 方法一:itoa函数 itoa函数将数值转换为字符串,通过规定转换进制实现。 #include<stdio.h&...

    众所周知,C中以八进制,十进制和十六进制都可以通过%o,%d和%x轻松实现,然而唯独没有提供二进制输出的快速方式。

    方法一:itoa函数
    itoa函数将数值转换为字符串,通过规定转换进制实现。
    
    #include<stdio.h>
    #include<stdlib.h>
    //注意必须调用stdlib.h函数库
    int main(void)
    {
        while(1)
        {
            int a;
            printf("请输入一个十进制数:  ");
            scanf("%d",&a);
            char str[30];
            itoa(a,str,2);//2即是代表转换为2进制
            printf("转换成二进制数是: %s\n\n",str);
        }
        return 0;
    }
    

    函数:itoa(integer to array)
    功能:把一整数转换为字符串
    用法:char *itoa(int value, char *string, int radix); 将int整型数转化为一个字符串,并将值保存在数组string中。
    value: 待转化的整数。
    radix:是基数的意思,即先将value转化为radix进制的数,范围介于2-36,比如10表示10进制,16表示16进制。
    * string:保存转换后得到的字符串。
    返回值:
    char *:指向生成的字符串, 同*string。
    头文件:"stdlib.h"


    方法二:短除法
    短除法,将十进制转换为二进制的笔算过程。
    
    #include<stdio.h>
    int main()
    {
        int a,b,k,i;
        int remainder[30];
        while(1)
        {
            //定义了一个remainder数组,用来收集短除法除得的余数,栈倒序输出。
            printf("请输入一个十进制数:  ");
            scanf("%d",&a);
            k=0;
            while(a!=0)
            {
                b=a/2;
                k++;
                remainder[k]=a-b*2;
                a=a/2;
            };
            printf("转换成二进制数是:  ");
            for (i=k; i>=1; i--)
            {
                printf("%d",remainder[i]);
            }
            printf("\n\n");
        }
        return 0;
    }
    

    感谢博主:https://blog.csdn.net/wjkhello/article/details/78149441

    展开全文
  • C语言二进制输出问题

    千次阅读 2019-07-07 11:22:43
    C语言中没有直接将ACCII码以二进制格式输出的功能,需要自己设计,现在就请你来完成这个函数。 Input 输入由若干段字符组成,每一段由5个“”作为结尾;每一段中包含符合C语言规定的字符;若干段加起来总长度不超过...

    C语言中没有直接将ACCII码以二进制格式输出的功能,需要自己设计,现在就请你来完成这个函数。

    Input
    输入由若干段字符组成,每一段由5个“”作为结尾;每一段中包含符合C语言规定的字符;若干段加起来总长度不超过10000个字符。为了处理方便,我们规定一旦遇到5个连续的“”,那么就是段落分界,这5个“”不是段落内容。输入保证每个段落有5个连续的“”作为结尾。如果最后一次连续5个“*”之后还有其他字符,就视为无效字符,不需要处理。

    Output
    将输入中的所有字符(包括回车换行符)都转换成二进制并输出。如果没有需要转换的字符,那么输出一行“Blank !”。

    Sample Input
    123


    Sample Output
    00110001001100100011001100001010
    Blank !

    Hint
    如果你使用java语言,因为我们今天考试的内容就是请你设计一个转换函数,所以你不能使用系统函数来解决,要求你无论用什么语言提交,都必须要自己写一个将ASCII码转换成二进制的函数。

    #include<bits/stdc++.h>
    using namespace std;
    const int MAXN=5000005;
    char s[MAXN];
    int cnt;
    bool ckend(int pos)
    {
        if(s[pos]=='*'&&s[pos+1]=='*'&&s[pos+2]=='*'&&s[pos+3]=='*'&&s[pos+4]=='*')return true;
        return false;
    }
    bool f;
    string p;
    int main()
    {
        f=false;
        while((s[cnt++]=getchar())!=EOF);//s[--cnt]='\0';
        for(int i=0;s[i];)
        {
            if(ckend(i))
            {
                i+=5;
                if(!f)
                {
                    printf("Blank !\n");
                }
                else
                {
                    cout<<p<<endl;
                }
                f=false;
                p.clear();
                continue;
            }
            else
            {
                for(int j=7;~j;--j)
                {
                    p+=(!!((1<<j)&s[i]))+'0';
                }
                i++;
                f=true;
            }
        }
        return 0;
    }
    
    展开全文
  • 利用C语言读取一个TXT文件并将其中的0-255十进制数据转化成八位二进制序列,再TXT文档存储,C语言中有itoa()函数也可以完成进制转换,更方便,但是要固定位数输出不太方便。以下代码可以实现十进制到二进制的...
  • C语言以二进制形式输出文件

    千次阅读 2018-01-18 16:55:24
    FILE *outfp; outfp=fopen("MatR.bin","wb");fwrite(MatR[0],sizeof(float),n_rows*9,outfp);fclose(outfp);
  • 这里就不细说了,下面我们就用这个知识写一个程序 直接以二进制的方式输出十进制数字 定义一个整形int num = 1314520 ; 二进制数字是 0000 0000 0001 0100 0000 1110 1101 1000 在这里插入代码片 #include <stdio.
  • C语言以二进制形式输出整数

    万次阅读 2014-09-08 09:45:49
    对整数而言,可以使用%d、%o、%x(或%X)输出十进制形式、八进制、十六进制形式,但貌似缺乏二进制形式,这不得不说是一种遗憾。因此,网上经常见到有人询问如何解决这个问题,解决方式有两种,一种是利用Windows...
  • C语言】将十进制数转化为二进制输出

    万次阅读 多人点赞 2018-07-16 22:02:49
    十进制转化为二进制输出整型为例) 首先需要明确十进制转为二进制的算法:将所需转化的数除以2,所得余数为k1,将所得商再除以2,所得余数为k2…...重复步骤直到商为0;读数时从最后一个余数读起,即kn,k(n-1)...
  • //输出奇偶位二进制序列函数 void odd_even_bity(int n){ int i; //变量i用遍历n、len1和len2 int count = 0; //变量count判断奇偶位 int odd = 0; //变量odd用保存奇数位 int even = 0; ...
  • C语言int类型(4字节)以二进制形式输出: #include<stdio.h> void intobit(int num)/*num是要以二进制形式输出的int值将二进制数据逐个置1,在右移,依次实现逐个输出*/{ int tnum=num; int i; for(i=31;i&...
  • //和^运算符,并以二进制字符串形式打印结果(如果无法使用命令行环境 , 可以通过交互式让程序读取字符串) # include <stdio.h> # include <limits.h> # include <string.h> # includ...
  • c语言按位反转、二进制输出函数

    千次阅读 2013-05-13 22:10:25
    行为两位为一单元,奇偶单元进行交换;第三行为四位为一单元,奇偶单元进行交换;第四行为八位为一单元,奇偶单元进行交换;最后一行为十六位为一单元,奇偶单元进行交换。至此,32位
  • C语言 将int型数据以二进制形式输出

    万次阅读 2012-12-28 16:43:00
    #include ... //将1左移,然后和n做按位与运算,最后逻辑右移,从高位到低位输出二进制  n; //上边的一句总是对最高位进行处理,所以,这里就对n左移一位喽  }  printf("\n%d\n",n); }
  • 以二进制形式输出char *数据

    千次阅读 2017-08-13 15:59:00
    C语言数组/char * 以二进制形式输出: #include <stdio.h> #include <string.h> void strtobit(char *chr){/* chr是要以二进制形式输出的字符串的值*/ char *pchr=chr; int i,j; for(i=0;i<...
  • 准备面试,复习C/C++相关的内容,复习到C语言的时候,想到了一个问题,如何将一个整数以二进制形式直接输出,搜索了半天资料,不能像整数直接以十六进制或者八进制输出整数一样直接输出整数的二进制形式。...
  • /* 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");...
  • 二进制的英文是Binary,简写为B或BIN,所以163 = 0b10100011(前面加上“0b”或“0B”) 八进制的英文是Octal,简写为O或OCT,所以163 = 0243(前面加上数字0,示与十进制的区别) 十进制的英文为Decimal,简写为D...
  • //以二进制的形式输出整数 #include void to_binary(unsigned long n); int main() {  unsigned long number;  printf("请输入一个整数(按q退出):\n");  while(scanf("%ul",&number)==1)  {  ...
  • [直接读取不做卷积直接输出得到的图片](https://img-ask.csdn.net/upload/201605/07/1462633919_570906.png) ![做卷积得到的图片](https://img-ask.csdn.net/upload/201605/07/1462633958_817522.png) 第一张是...
  • C语言中,整数都是以二进制的形式存放在内存中,所谓的二进制、八进制、十进制和十六进制只是输出显示方式的不同。 下表是各种进制整数的输出格式。 细心的读者可能会发现,上表中没有二进制的输出格式,不能使用 ...
  • C语言中的整数除了可以使用十进制,还可以使用二进制、八进制和十六进制。 一、二进制数、八进制数和十六进制数的表示 一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制...
  • C语言——二进制转十六进制

    千次阅读 2018-12-02 00:13:03
    输入一个二进制的数,要求输出二进制数的十六进制表示。在十六进制的表示中,A~F表示10~15。 Input 第一行是测试数据的组数n,后面跟着n行输入。每组测试数据占一行,包括一个0和1组成的字符串,字符串长度...
  • C语言 二进制转任意进制

    千次阅读 2017-06-28 13:38:53
    将输入的0和1数字序列表示的二进制数转换为八进制、十六进制数。 (2)功能要求 ①将输入的0和1数字序列存放到数组中。 ②从终端输入要转换的进制。 ③将转换后的结果保存到数组中,并适当的形式输出。 ④若...
  • c语言中,我们可以通过%d、%o 和%x 输出二进制、八进制和十六进制数。而在c++中则通过 iostream 头文件中提供的不同的控制符来达到不同的输出: dec:表示cout进制输出; hex:表示cout十六进制输出; oct:...
  • 用栈实现进制转换,为类C语言,可以正常运行,而不仅仅是直接的算法! #include<stdio.h> #include<stdlib.h> #define MAXSIZE 100 //规定最大数量 typedef int SElemType; typedef struct SqStack { ...
  • char类型变量二进制形式输出

    千次阅读 2017-08-12 21:29:00
    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 2 3 4 5 ... 20
收藏数 531
精华内容 212
关键字:

以二进制输出c语言

c语言 订阅