编写一个函数实现数制的转换,不用递归,用数组实现。在主函数中输入一个十进制数,输出相应的十六进制数。
#include<iostream>
using namespace std;
int DtoH(int n, int c[])
{
int i;
for (i = 0; n > 0; i++)
{
c[i] = n % 16;
n /= 16;
}
return i - 1;
}
int main()
{
char h[] = "0123456789ABCDEF";
int c[20], n, i;
cout << "请输入一个十进制整数:";
cin >> n;
i = DtoH(n, c);
for (; i >= 0; i--)
cout << h[c[i]];
cout << endl;
system("pause");
return 0;
}
结果分析