解题思路:先将16转10再将10转8
注意事项:
参考代码:
#include<bits/stdc++.h> #include<math.h> using namespace std; void fun_10_8(int n) { if(n<8) cout<<n; if(n>=8) { fun_2(n/8); cout<<n%8; } } int main() { int n,count=0,lenth,temp; cin>>n; getchar(); char num[100001]; while(n--){ gets(num); lenth = strlen(num); for(int i=0;i<lenth;i++){ switch(num[i]) { case 'A': temp = 10; break; case 'B': temp = 11; break; case 'C': temp = 12; break; case 'D': temp = 13; break; case 'E': temp = 14; break; case 'F': temp = 15; break; default: temp = num[i]-'0'; break; }//将16进制数的每一位转换成10进制数 count+=temp*pow(16,lenth-i-1); } //cout<<"10:"<<count<<endl; fun_10_8(count);cout<<endl; count=0; } return 0; }
0.0分
5 人评分
简单编码 (C++代码)浏览:730 |
2005年春浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:530 |
【亲和数】 (C语言代码)浏览:588 |
最长单词 (C语言代码)浏览:1474 |
【出圈】 (C语言代码)浏览:824 |
简单的a+b (C语言代码)浏览:752 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:701 |
C语言训练-求PI* (C语言代码)浏览:638 |
【明明的随机数】 (C语言代码)浏览:845 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:268 |