首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【基础算法】C++经典练习题-进制转换

题目1:正整数N转换成一个二进制数题目描述

输入一个不大于32767的整数n,将它转换成一个二进制数。

输入格式

输入只有一行,包括一个整数n(0

输出格式

输出只有一行。

样例输入

100样例输出

1100100标程

#include

using namespace std;

int n,a[10000],k=0;

int main(){

   cin>>n;

   if(n==0){

       cout

       return 0;

  }

   while(n>0){

  k++;

       a[k]=n%2;

       n/=2;

  }

   for(int i=k;i>=1;i--){

  cout

}

   return 0;

}题目2:二进制转换十进制题目描述

请将一个25位以内的2进制正整数转换为10进制!

输入格式

一个25位以内的二进制正整数

输出格式

该数对应的十进制

样例输入样例输出标程

#include

using namespace std;

int sum=0;

char s[26];

int main(){

scanf("%s",s);

int i=0;

int len=strlen(s);

while(s[i]!='\0'){

sum+=(s[i]-'0')*pow(2,len-i-1);

i++;

}

cout

   return 0;

}题目3:正整数n转换为16进制题目描述

请从键盘读入一个非负整数n(n是一个不超过18位的正整数),将n转换为16进制!

注意:16进制即逢16进1,每一位上可以是从小到大为0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F共16个大小不同的数,即逢16进1,其中用A,B,C,D,E,F这六个字母来分别表示10,11,12,13,14,15。

如:60的十六进制为3C。(字母请用大写)

输入格式

一个不超过18位的非负整数n

输出格式

该数的十六进制值

样例输入样例输出

174876E800标程

#include

using namespace std;

char a[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

char ans[10001];

long long  n,j,i=0;

int main(){

   cin>>n;

   if(n==0){

       cout

       return 0;

  }

   while(n!=0){

       int t=n%16;

       n=n/16;

       ans[i++]=a[t];

  }

   for(j=i-1;j>=0;j--){

       cout

  }

   return 0;

}

爱编程  玩科技  懂教育

#征稿

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OCSeLic87NZJ0-VU0N-ESB2Q0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券