蓝桥杯【基础练习】十六进制转十进制、八进制

蓝桥杯 基础练习 十六进制转八进制 C语言 高效方式 解决超时问题 蓝桥杯 基础练习 十六进制转八进制 C语言 高效方式 解决超时问题 大家好,这是我第一次书写自己的博客,非常开心你能够阅读这篇文章,希望接下来的内容对你有所帮助。 正文 基础练习 十六进制转八进制 时间限制:1.0s 内存限制:512.0MB 问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为一个正整数n (1<=n<=10)。   接下来... 阅读详情

十六进制转十进制

问题描述

  从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。
  注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。

样例输入

FFFF

样例输出

65535

方法一:巧用C语言的输入输出格式符

#include"cstdio"
int main(){
	__int64 n;	//等价于 long long int n; 
    //unsigned int n;
	scanf("%llx",&n);	//注意格式符 
	printf("%lld\n",n);	//llu==lld 
	return 0;
} 

注意:

试了好多次,每次运行FFFFFFFF的时候都会溢出,后来无意中看到无符号整数(unsigned int,例如-1的无符号数(32位)应该位4294967295),运行结果正确。或者长整型(long long,不同的编译环境可能位数不同,通常为32位或64位)。

方法二:

#include"iostream"
#include"string"
using namespace std;
int main(){
	string s;
	cin>>s;
	unsigned int t=0,n=1;//FFFFFFFF H=4294967295 D 
	int i=s.size()-1;
	for(;i>=0;i--){
		if(s[i]<='9')
			t+=(s[i]-'0')*n;
		else
			t+=(s[i]-'A'+10)*n;
		//cout<<t<<" ";
		n*=16;
	}
	//cout<<endl;
	cout<<t<<endl;
	return 0;
} 

十六进制转八进制

问题描述
  给定n个十六进制正整数,输出它们对应的八进制数。

输入格式
  输入的第一行为一个正整数n (1<=n<=10)。
  接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。

输出格式
  输出n行,每行为输入对应的八进制正整数。

  【注意】
  输入的十六进制数不会有前导0,比如012A。
  输出的八进制数也不能有前导0。

样例输入
  2
  39
  123ABC

样例输出
  71
  4435274

  【提示】
  先将十六进制数转换成某进制数,再由某进制数转换成八进制。

方法一:巧用C语言的输入输出格式符

#include"cstdio"
int n;    //试了很多次,想不通为什么n要声明为全局变量
int main(){
	//int n;    在main内声明n时,循环不按照题目要求结束
	scanf("%d",&n);	
	unsigned int t;
	while(n!=0){		
		scanf("%llx",&t);
		printf("%llo\n",t);
		n--;				
	}
	return 0;
}

方法二:借鉴(哈哈 一个好的程序猿是“搬运工”)

#include"iostream"
#include"string"
using namespace std;
int main(){
	int n;
	cin>>n;
	string s1,s2;
	while((n--)!=0){
		cin>>s1;
		s2="";
		for(int i=0;i<s1.size();i++){
			switch(s1[i]){
				case '0':s2+="0000";break;
				case '1':s2+="0001";break;
				case '2':s2+="0010";break;
				case '3':s2+="0011";break;
				case '4':s2+="0100";break;
				case '5':s2+="0101";break;
				case '6':s2+="0110";break;
				case '7':s2+="0111";break;
				case '8':s2+="1000";break;
				case '9':s2+="1001";break;
				case 'A':s2+="1010";break;
				case 'B':s2+="1011";break;
				case 'C':s2+="1100";break;
				case 'D':s2+="1101";break;
				case 'E':s2+="1110";break;
				case 'F':s2+="1111";break;
				default :break;
			}
		}
		int len=s2.size();
		if(len%3==1)
			s2="00"+s2;
		if(len%3==2)
			s2="0"+s2;
		int flag=0;
		for(int i=0;i<=s2.size()-3;i+=3){
			int num=(s2[i]-'0')*4+(s2[i+1]-'0')*2+(s2[i+2]-'0');
			if(num)		//忽略前导0 
				flag=1;
			if(flag)
				cout<<num;
		}
		cout<<endl;
	} 
	return 0;
}

小结:

十六进制转八进制的时候,提示“先将十六进制数转换成某进制数,再由某进制数转换成八进制。”但是因为题目要求十六进制数的长度不超过100000,如果用十进制做中间值会溢出,故我们采用二进制,我们可以利用C++的string类,要注意四位二进制表示一位十六进制,三位二进制表示一位八进制,故由二进制转八进制时要注意和3qu取余,修改二进制的长度

(if(len%3==1)  s2="00"+s2; if(len%3==2)s2="0"+s2;)。严格遵守题目要求!!!

蓝桥杯基础练习题十题   基础练习 数列排序 问题描述   给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1&lt;=n&lt;=200 输入格式   第一行为一个整数n。   第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。 输出格式   输出一行,按从小到大的顺序输出排序后的数列。 样例输入 5 8 3 6 4 9 样例输出 3 4 6 8 9   程序:   import... 阅读详情

相关推荐

蓝桥杯-十六进制转八进制 .pptx

蓝桥杯-十六进制转八进制,题目分析讲解,100000长度的十六进数巧妙制转八进制数,C代码实现展示

2,8,10,16进制的转换

这篇博文详细的讲了讲在计算机中常用的几种进制的转换,相信在阅读过这篇博文后再经过练习能熟练的掌握进制运算了。

wish_you_luck的博客 930

双目立体匹配算法:SGBM

SGBM(Semi-Global Block Matching)是一种用于计算双目视觉中视差(disparity)的半全局匹配算法,在OpenCV中的实现为semi-global block matching(SGBM)。它是基于全局匹配算法和局部匹配算法的优缺点,提出了一种折中的方法,既能保证视差图的质量,又能降低计算复杂度。

weixin_45303602的博客 9411

基础练习 十六进制转八进制&十六进制转十进制&十进制转十六进制(Java)

十六进制转八进制 问题描述 给定n个十六进制正整数,输出它们对应的八进制数。 输入格式 输入的第一行为一个正整数n (1<=n<=10)。 接下来n行,每行一个由09、大写字母AF组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。 输出格式 输出n行,每行为输入对应的八进制正整数。 【注意】 输入的十六进制数不会有前导0,比如012A。 输出的八进制数也不能有前导0。 样例输入 2 39 123ABC 样例输出 71 4435274 【提示】 先将十六进制数转换成某

马克菠萝包ଲ的博客 905

【STM32】433MHz OOK信号软解码实战:从EV1527协议到嵌入式实现

本文详细介绍了基于STM32微控制器实现433MHz OOK信号软解码的完整实战过程。文章从EV1527协议解析入手,重点阐述了利用STM32的GPIO和定时器进行信号采样、脉宽还原、同步头识别以及数据位判决的核心算法,并提供了对抗无线干扰的容错优化策略,帮助开发者深入理解并掌握低成本无线通信的嵌入式实现方案。

weixin_29299807的博客 785

用Keil5给CH552G编程:手把手配置8051开发环境+LED闪烁实战

本文详细介绍了如何使用Keil5为CH552G单片机配置8051开发环境,并完成LED闪烁实战。从获取必要软件、安装WCH器件库到创建工程、编写程序及烧录,手把手指导开发者避开常见陷阱,特别适合从STC转向CH552G的开发者。

weixin_30733003的博客 539

蓝桥杯-基础练习 十六进制转八进制

问题描述 给定n个十六进制正整数,输出它们对应的八进制数。 输入格式 输入的第一行为一个正整数n (1 接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。 输出格式 输出n行,每行为输入对应的八进制正整数。 【注意】 输入的十六进制数不会有前导0,比如012A。 输出的八进制数也不能有前导0。 样例输入

柳婼 の blog 1430

安卓集成华为HMS Scankit实现自定义扫码功能

实现扫码功能 使用的是集成华为扫描的SDK,UI界面借鉴的是谷歌官方的Zxing项目中的自定义view,两者结合实现。 先上效果图: 先在项目根级别(build.gradle)当中配置HMS Core SDK的Maven仓地址。 // 配置HMS Core SDK的Maven仓地址。 maven {url 'https://developer.huawei.com/repo/'} // 配置HMS Core SDK的Maven仓地址。 maven {url 'https://developer.huaw

qq_47625961的博客 5512

蓝桥杯-十六进制转八进制(C语言)

蓝桥杯-十六进制转八进制(C语言) 未完成! 可以的话希望有哪位大佬帮忙看一下哪里出了问题 这里是一只在进阶的小菜鸡 尝试了几次,决定先放弃了,可能能力还不太够(菜) 思路 将十六进制转换成二进制,再将二进制转换成八进制 十六进制转二进制保存在一个数组中 数组中的0位恰好对应二进制转到八进制的第一组三个数里的第一个应为2的0次(使用pow()函数) 每三组输出一次结果 输出完之后再计算下一个数组中...

jiayouxu的博客 5089

使用 Pfam 和 InterProScan 进行蛋白质家族和功能域的分析

本文介绍了使用Pfam和InterProScan进行蛋白质家族与功能域分析的方法。主要内容包括:1) Pfam数据库的本地化使用,通过hmmscan工具比对Pfam-A.hmm数据库,并提供了批量处理Python脚本;2) InterProScan的安装配置与命令行参数详解,支持多数据库整合分析;3) 补充介绍了基于curl的Uniprot在线查询方法。文章提供了从软件安装到实战分析的完整流程,适用于本地化、批量化蛋白质功能注释需求,特别是无网络环境或大规模数据分析场景,适合不同水平的生物信息学用户。

Protein Designer的博客 1921

低功耗设计:rush current

在power gating的设计中引入了一个rush current的概念,它的产生原因是switch cell上电过程相当于电容充电过程,会产生一个短期的大电流,称之为rush current。 1.rush current的危害 1)造成巨大的ir drop 2)导致功能错误 3)一些极端例子中,rush current会引发VDD短期崩溃,造成存储在retention register与mem中的数据失效 4)大电流会还对周围always on模块造成干扰,产生大的压降 2.控制rus

m0_61544122的博客 3071

蓝桥杯——BASIC-11and12—— 基础练习 十六进制转十进制and八进制

资源限制: 时间限制:1.0s 内存限制:512.0MB 问题描述:   从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。   注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。 样例输入: FFFF 样例输出: 65535 代码如下: import java.util.*; public class Main { public static void main(String args[]) {

qq_54631286的博客 6105

Python爬虫实战:逆向工程与异步处理攻克Pinterest无限滚动瀑布流

我们将从零开始,逐步分析其数据接口,构建一个功能完整的爬虫,并深入探讨反爬虫策略的应对、性能优化以及数据存储等高级主题。: 在实际爬取中,你需要先访问一次Pinterest主页,获取初始的Cookie和CSRF Token,然后再发起API请求。: Python爬虫,Pinterest,无限滚动,瀑布流,异步IO,httpx,逆向工程,API接口,动态内容,反爬虫。你会很快发现一些关键的请求模式。:页面初始加载有限内容,随着用户滚动,新的图片块通过AJAX动态加载,实现“永无止境”的浏览。

2201_76125261的博客 552

【蓝桥杯基础练习】进制转换<BASIC-10,11,12>试题 基础练习 十进制转十六进制 十六进制转十进制 十六进制转八进制

进制转换 试题 基础练习 十进制转十六进制 试题 基础练习 十六进制转十进制 试题 基础练习 十六进制转八进制

小鸡不好惹的博客 168

171、运动控制中的标定:摩擦力与死区补偿标定

摘要(149字) 运动控制系统中的摩擦力与死区补偿是提升精度的关键。摩擦力分为静摩擦、库仑摩擦和粘滞摩擦,其中Stribeck效应是低速抖动的主因;死区则表现为控制信号的无效区间。有效标定方法包括恒速测试(摩擦力)和斜坡响应法(死区)。补偿策略需采用分段前馈和动态调整,避免过度补偿导致振荡。实践中要注意机械状态检查、补偿量限幅,并定期重新标定。硬件升级配合算法补偿才能实现最优控制,标定工作应优先于PID参数调整。

m0_50546716的博客 231

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

蓝桥杯题解-基础练习 十六进制转八进制、十六进制转十进制

蓝桥杯题解

凪 207

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

蓝桥杯基础练习汇总详细解析(一)——数列排序、十六进制转八进制、十六进制转十进制、十进制转十六进制、特殊回文数(代码实现、解题思路、Python)

蓝桥杯基础练习详细解释及代码实现

weixin_61967363的博客 1382

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Java蓝桥杯试题集之基础练习10-13 ---- 十进制转十六进制、十六进制转十进制、十六进制转八进制、数列排序

 目录 十进制转十六进制 解题思路 十六进制转十进制 解题思路 十六进制转八进制 解题思路 数列排序 解题思路 这几道题涉及到java进制转换的函数,一定要记住鸭~   十进制转十六进制 解题思路 import java.util.Scanner; public class Main { public static void main(String[] arg...

LimonSea的博客 533

蓝桥杯基础练习超全习题题解——BASIC-10~13题(十进制转十六进制、十六进制转十进制、十六进制转八进制、数列排序)

每日刷题(三十一) BASIC-10、十进制转十六进制 思路如下: 其实这根本就不算一个题,你可以直接提交一个六行代码 #include<stdio.h> int main() { int n; scanf("%d",&n); printf("%X\n", n); return 0; } 正统代码如下: #include<stdio.h> int...

Atticus的博客 984

蓝桥杯java:基础练习 十六进制转八进制

蓝桥杯java:基础练习 十六进制转八进制 问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为一个正整数n (1<=n<=10)。   接下来n行,每行一个由09、大写字母AF组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。 输出格式   输出n行,每行为输入对应的八进制正整数。 注意   输入的十六进制数不会有...

江南小帅瓜的博客 655

蓝桥杯基础练习合集一(C语言) 1.A+B问题2.数列排序3.十六进制转八进制4.十六进制转十进制5.十进制转十六进制

给定n个十六进制正整数,输出它们对应的八进制数。 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进制的形式。

weixin_58628068的博客 806

C/C++ 十六进制转八进制 利用bitset预处理,将十进制转换为对应二进制数

蓝桥杯练习系统:基础练习 十六进制转八进制 C/C++ 十六进制转八进制 利用bitset预处理,将十进制转换为对应二进制数

qq_42323056的博客 1066

蓝桥杯练习day3

1.试题 基础练习 十进制转十六进制 问题描述   十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E给出一个非负整数,将它表示成十六进制的形式。 输入格式   输入包含一个非负整数a,表示要转换的数。0<=a<=2147483647

qq_44938915的博客 229

2021-02-19

蓝桥杯python组赛题-- 基础练习 文章目录题目一--十六进制转八进制代码一总结题目2-十六进制转十进制代码2题目3-十进制转十六进制代码3注意事项题目4-特殊的数字代码4题目5-查找整数代码5 题目一–十六进制转八进制 问题描述   给定n个十六进制正整数,输出它们对应的八进制数。 输入格式   输入的第一行为一个正整数n (1<=n<=10)。   接下来n行,每行一个由09、大写字母AF组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。 输出格式   

m0_46492273的博客 201

蓝桥杯basic练习

蓝桥杯basic练习 1: /************************************************************************* > File Name: basic_1.cpp > Author: gwq > Mail: gwq5210@qq.com > Created Time: 2014年11月05日 星期三 23时46分56秒

gwq5210的专栏 615

蓝桥杯基础练习——十六进制转八进制

问题描述  给定n个十六进制正整数,输出它们对应的八进制数。输入格式  输入的第一行为一个正整数n (1&lt;=n&lt;=10)。  接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式  输出n行,每行为输入对应的八进制正整数。  【注意】  输入的十六进制数不会有前导0,比如012A。  输出的八进制数也不能有...

Jason_crawford的博客 1993
上一篇: Sql server2010常见操作【简洁易懂】
下一篇: 蓝桥杯---算法训练 出现次数最多的整数
123我是木头人
博客等级 码龄9年 67粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

123我是木头人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值