进制转换

网友投稿 280 2022-08-28

进制转换

方法一、巧妙求解

#includeusing namespace std;int main(){ int a; //cin默认是 十进制,hex之后,输入是十六进制 //因为是多组同时输入,所以必须加while,不然会是o% ,尽管在自测中通过 while(cin>>hex>>a) //cout 默认是十进制 cout<

方法二、根据概念求解

#include#include#includeusing namespace std;int main(){ string str; while(cin>>str) { int num=0; int n=str.size(); //去除前两位 0x for(int i=2;i='0'&&str[i]<='9') //乘号运算符优先级高于减法,括号得加, num=num+pow(16,n-i-1)*(str[i]-'0'); else if(str[i]>='A'&&str[i]<='Z') num=num+pow(16,n-i-1)*(str[i]-'A'+10); else //(str[i]>='a'&&str[i]<='z') num=num+pow(16,n-i-1)*(str[i]-'a'+10); } cout<

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:对称二叉树
下一篇:2022年,营销er身上背的KPI,用营销科学能解开吗?
相关文章

 发表评论

暂时没有评论,来抢沙发吧~