解题思路:除2取余
注意事项:
超过100万的数,增加数组的大小。
参考代码:
#include<iostream>
#include<cstdio>
using namespace std;
int a[20],A=0;
int main()
{
int n,temp,num,ans,i;
cin>>n;
num=n;
temp=1;
ans=0;
while(n){
if(n%2==1){
A++;
a[A]=temp;
}
n/=2;
temp*=2;
}
cout<<num<<'=';
for(i=A;i>=2;i--)
cout<<a[i]<<'+';
cout<<a[1]<<endl;
return 0;
}
0.0分
1 人评分
C语言训练-求矩阵的两对角线上的元素之和 (C++代码)浏览:806 |
C二级辅导-求偶数和 (C语言代码)浏览:607 |
C语言训练-谁家孩子跑最慢* (C语言代码)浏览:1508 |
简单的a+b (C语言代码)浏览:652 |
高精度加法 (C++代码)(大数加法)浏览:934 |
C二级辅导-统计字符 (C语言代码)浏览:506 |
C语言程序设计教程(第三版)课后习题9.8 (Java代码)浏览:1642 |
拆分位数 (C语言代码)浏览:1328 |
简单的a+b (C语言代码)浏览:528 |
C语言程序设计教程(第三版)课后习题6.6 (C++代码)浏览:633 |