/*给定n个十六进制正整数,输出它们对应的八进制数。*/
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int n=0;
cin >> n;
int i = 0,s=0;
while (n > 0)
{
int k = 1;
for (int j = 1; j <= i; j++)
{
k *= 16;
}
s += ((n % 10)* k);
n /= 10;
i++;
}
cout << oct << s<<endl;
return 0;
}
没理解你的问题,,,你这个不是将你输入的十进制数字当做16进制然后通过oct输出为8进制的代码吗
cin>>hex>>n; 这个才是输入十六进制的正确用法把。。。