C语言编程--------进制转换(十进制转化为二进制)

将一个任意十进制整数转换为二进制数并打印出来

实现方法:除二取余法

实现思路:

1,将得到十进制数n反复除以2取余数,存入数组中。
2,用赋值运算n=n/2,来不断更新n的值
3,遍历数组将其倒序打印。
#include<stdio.h>
#include<string.h>
#define N 40
void d_to_b(int n,char a[]);
int main(){
	int a,b,n;
	char arr[N]={};
	printf("请输入一个任意十进制数,将转化为二进制:\n");
	scanf("%d",&n);
	d_to_b(n,arr);
	printf("请输入十进制数%d转化为二进制为:",n);
	puts(arr);//puts(char *str)输出字符串
	return 0;
	 
}
/*将十进制n转换为二进制存入数组a[]中*/
void d_to_b(int n,char a[]){
	int len=0;
	while(n>0){		//反复除以2取余数并转换为字符,存入a[]中; 
		a[len]=n%2+'0';
		len++;		
		n=n/2;		//更新n的值 
	}
	a[len]='\0';	//在a[] 中的有效元素之后加上字符串结束标志'\0'; 
	strrev(a);		//调用strrev()翻转a[]中的元素 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值