龙空技术网

数论之十进制转二进制

小编程家信奥赛 62

前言:

如今小伙伴们对“c语言十进制转换为二进制不用数组”大概比较注意,姐妹们都想要了解一些“c语言十进制转换为二进制不用数组”的相关资讯。那么小编同时在网摘上搜集了一些对于“c语言十进制转换为二进制不用数组””的相关知识,希望同学们能喜欢,朋友们快快来了解一下吧!

一、实验目标

输入一个正整数,转换为二进制输出。

输入样例1:

14

输出样例1:

1110

数据范围:

* n <= 2^31

二、分析

1、思路

循环%2求余,剩下商,直到商为0退出。

2、方案和步骤

用一个数组a[100]来保存二进制,用last表示当前存储的位,last=1表示二进制的个位数。

while(n>0) {

a[++last] = n % 2;

n /= 2;

}

注意数组的存储和输出顺序是相反的,输出的循环要反着来。

三、参考代码

#include <iostream>using namespace std;int n;int a[100], last;int main() {  int n;  cin>>n;  while(n>0) {    a[++last] = n % 2;    n /= 2;  }  for(int i=last; i>=1; i--)    cout<<a[i];  cout<<endl;  return 0;}

如果你对数论编程感兴趣,可以到itbegin网站上,输入短码100701,就可以看到今天的知识,跟着老师学习,也可以自己练习。

标签: #c语言十进制转换为二进制不用数组