题目描述

将十进制正整数转换成二进制数(保证输入数据产生的结果不突破十位)

输入

一行,一个十进制数

输出

一行,一个二进制数

样例输入 Copy

2

样例输出 Copy

10

【算法分析】

十进制转二进制采用短除法,将十进制数除以2,商写在下面,余数写在商的右边,一直往下除,直到除到商为0,将余数逐个保存到一维数组中,最后将数值倒序输出即可。

#include<bits/stdc .h> using namespace std; int main() { int a[100]; long long n; int i=0,j; cin>>n; if(n==0) { cout<<0; return 0; } while(n>0)//短除法将10进制数一直除以2直到商为0 { a[i]=n%2;//将余数逐个存入数值保存 i ; n=n/2; } i--; for(j=i;j>=0;j--)//将数组倒序输出 cout<<a[j]; return 0; }

c语言十进制转化为十六进制编程(C编程入门十进制数转换成二进制数)(1)

c语言十进制转化为十六进制编程(C编程入门十进制数转换成二进制数)(2)

,