当前位置:首页 » 编程语言 » 用c语言转化为二进制
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

用c语言转化为二进制

发布时间: 2023-05-14 14:41:30

A. c语言 把char 型 或者 整数转化成二进制 要怎么转

这个可以使用itoa函数
itoa为c语言的一个函数。itoa函数是一个广泛应用的,从非标准扩展到标准的C语言。它不能被移植,因为它不是标准定义下的C语言,但是,编译器通常在一个不遵循程式标准的模式下允许其通过header
,因为它是一个从逻辑对应到标准库的函数。itoa取整数输入值,并将其转换为数字的基数。


char
*itoa(
int
value,
char
*string,int
radix);


把一整数转换为字符串


itoa(i,num,10);
i
----需要转换成字符串的数字
num----
转换后保存字符串的变量
10----
转换数字的基数(即进制)。10就是说按10进制转换数字。还可以是2,8,16等等你喜欢的进制类型
返回值:指向num这个字符串的指针
程序例:
#include
#include
int
main(void)
{
int
number
=
12345;
char
string[25];
itoa(number,
string,
10);
printf("integer
=
%d
string
=
%s\n",
number,
string);
return
0;
}
char
*itoa(int
value,char
*string,int
radix)
将整数value转换成字符串存入string,
radix为转换时所用基数(保存到字符串中的数据的进制基数)

B. 怎么用C语言编程把十进制转化成二进制

c语言中没有二进制的格式输出符号.
你可以用itoa函数很方便的将一个10进制int转变成二进制字符串.
如:
int
i;
char
s[128];
scanf("%d",&i);
itoa(i,
s,
2);
/*3个参数,第一个是待转换的数,第二个是存放转换后的字符串,第三个即需要转换的进制*/
printf("该数转换为二进制是:
[%s]\n",s);
补充一点,itoa函数的头文件是stdlib.h

C. c语言编程,如何将十进制转化为2进制

c语言编程将十进制转化为2进制可按手工转换规则进行程序转换。

  • 整数占四个字节,每字节8位,共32位。所以,可以定义一个32位的数组来存储转换结果。

  • 循环将整数进行除2取余数,余数存储到数组中。

  • 当整数整除为0时,结束循环

  • 逆序输出数组,得到转换结果

参考代码:

#include<stdio.h>
voidmain()
{
intc[32],i=0,n;
scanf("%d",&n);//输入待转换整数n
do{
c[i++]=n%2;
n/=2;
}while(n!=0);

for(i--;i>=0;i--)
printf("%d",c[i]);
printf(" ");
}

D. 请用一个很简单的C语言程序:十进制转换为二进制。

#include"stdio.h"

intmain()

{

intn;

inti=0,j;

charstr[100]={0};

charoutput[100]={0};

printf("请输入一个整数:");

scanf("%d",&n);

while(n)

{

str[i]=n%2+'0';

n=n/2;

i++;

}

for(j=0;j<i;j++)

output[j]=str[i-1-j];

printf("该整数的二进制表示为:%s ",output);

}

E. C语言,使用数组,编写一个十进制正整数转换为二进制数的转换工具

#include<stdio.h>

intmain()
{
inti=0,j=0,a=0,n[100]={0};
scanf("%d",&a);
printf("input=%d ",a);
while(a)
{
n[i++]=a%2;
a/=2;
}

for(j=i-1;j>=0;j--)
{
printf("%d",n[j]);
}

printf(" ");
return0;
}

65

input=65

1000001

F. 在C语言中怎么把一个数转换成二进制然后输出

数据在内存中本来就是以二进制补码存放的,设法从高字节至低字节一个bit一个bit地输出到屏幕上即可。根据题面要求,输出过程还要做以下工作:
从最高字节开始检测,全0的字节略去;
每8位增加输出一个空格。
代码如下:
12345678910111213141516//#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"int main(void){ char *p; unsigned i,n,x=1<<sizeof(int)*8-1; printf("Input an integer...\n"); scanf("%d",&n); for(p=(char *)&n,i=sizeof(int)-1;i>0;i--) if(*(p+i)==0) x>>=8; else break; for(i=0;x;x>>=1) printf(++i%8 ? "%d" : "%d ",(n&x) || 0); printf("\n"); return 0;}

G. 一道c语言编程题,将十进制转换为二进制

1、打开visual C++ 6.0-文件-新建-文件-C++ Source File。