码迷,mamicode.com
首页 > 编程语言 > 详细

数组-----二进制数与十进制数互换

时间:2015-07-16 00:22:31      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:

  1. //二进制数转换为十进制数
  2. #include"stdafx.h"
  3. #include<iostream>
  4. //#include<string.h>
  5. //#include<process.h>
  6. using namespace std;
  7. void main(){
  8. int i, bitv, w=1, value = 0;//value累加和、bitv位值(0或1)、w权值
  9. char a[20];
  10. cout << "Enter a bit binary number(less than 20 bit):"<<endl;
  11. cin >> a;
  12. for (i = strlen(a)-1; i >= 0; i--){
  13. bitv = a[i];
  14. if (bitv == ‘1‘)//注意字符串形式
  15. value += w;
  16. else
  17. if (bitv !=‘0‘)
  18. { //判断输入正误
  19. cout << "enter error!";
  20. exit(0);
  21. }
  22. w *= 2; //更换权值
  23. }
  24. cout << " ------------ - result------------ -" << endl;
  25. cout << a << "(2)="<<value << "(10)"<<endl;
  26. }
  27. -----------------------------------------------------------------------------------

//十进制数转换为二进制数(逐次除二,倒取余数)

  1. #include"stdafx.h"
  2. #include<iostream>
  3. using namespace std;
  4. void main(){
  5. int n,bitv,i=0;
  6. int a[20];
  7. cout << "Please enter a integer(10):"<<endl;
  8. cin >> n;
  9. while (n >= 1){
  10. bitv = n % 2;
  11. a[i] = bitv;
  12. i++;
  13. n/=2;
  14. }
  15. cout << n << "(10)=";
  16. for (int j = i - 1; j >= 0; j--){
  17. cout << a[j];
  18. }
  19. cout << "(2)"<<endl;
  20. }

数组-----二进制数与十进制数互换

标签:

原文地址:http://www.cnblogs.com/jiaojienku/p/4649755.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!