我是靠谱客的博主 虚拟汉堡,最近开发中收集的这篇文章主要介绍将十进制数转换为二进制数----不用数组,也不用函数,只用循环,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

输入一个正整数(十进制),输出此整数对应的二进制数(用循环实现,但不用数组,也不用函数调用)

/*
输入一个正整数(十进制),输出此整数对应的二进制数(用循环实现,但不用数组)

分析:十进制转换成二进制的方式:
      用辗转相除依次取余,直到商为0,获取逆序的余数序列就是对应的二进制数
	  用循环不用数组,因此,将按先得到的余数序列组成一个整数值,
	  再逆序输出该整数值(从低位到高位输出),即获得二进制代码
*/

#include <iostream>
using namespace std;
int main()
{
	int n; //待转换的十进制正整数
	int m; //存每次转换得到的余数
	int sum=0;	//进制转换逆序值
	int count=0; //记录二进制位数
	int i;
	cout<<"请输入待转换的十进制正整数:";
	cin>>n;
    while(n<0)
	{
	   cout<<"请重新输入待转换的十进制正整数:";
	   cin>>n;
	}
	cout<<endl;
    cout<<"十进制"<<n<<"的二进制形式为:";
	if(n==0)
	{cout<<n<<endl;
	 return 0;	
	}
	while(n!=0)   //辗转相除取余到商为0
	{
	  m=n%2;   //获取对应此次的余数
      count++;  //二进制位数增1
	  sum=sum*10+m;   //余数按先得到顺序组成一个整数,最后反序就是2进制数
	  n=n/2;
	}
    for(i=count;i>0;i--)  //循环从低位到高位逆序输出sum各个位上的数
	{ cout<<sum%10; 
	  sum=sum/10;
	}
	cout<<endl;
	return 0;
}
		
	


 

最后

以上就是虚拟汉堡为你收集整理的将十进制数转换为二进制数----不用数组,也不用函数,只用循环的全部内容,希望文章能够帮你解决将十进制数转换为二进制数----不用数组,也不用函数,只用循环所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部