C++大一问题,表示跪了……(尽量用初等的句子)

题目描述
编写一个程序,输出一张表,内容是1~256范围内每个十进制数对应的二进制数、八进制数和十六进制数形式。第1行是标题,用制表符整齐格式(根据输出情况调整)显示数值表。
输入

输出
第1行是标题,用制表符整齐格式显示数值表(根据输出情况调整:每行两个数字之间使用一个制表符,二进制列小于128时与后一列间为两个制表符以保证对齐,见课本第二章编程题第3题),最后一行需要回车.

 #define _CRT_SECURE_NO_WARNINGS
#include<iostream>
using namespace std;

//void TenToTwo(int number)//十进制转二级制 递归
//{
//  if (number == 0)
//  {
//      return;
//  }
//  TenToTwo(number / 2);
//  cout << number % 2;
//}
void TenToTwo(int number)//非递归
{
    int arr[9] = { 0 };//因为限定了数字最大是256
    int i = 8;
    while (number)
    {
        arr[i--] = number % 2;
        number /= 2;
    }
    for (int j = 0; j < 9; j++)
    {
        cout << arr[j];
    }

}
void test()
{
    cout << "十进制\t" << "二进制   \t" << "八进制\t" << "十六进制\t" << endl;
    for (int i = 1; i <= 256; i++)
    {

        cout.unsetf(ios::hex);
        cout.setf(ios::dec);
        cout << i << "\t";

        TenToTwo(i);

        cout.setf(ios::right);
        cout.setf(ios::showbase);
        cout.unsetf(ios::dec);
        cout.setf(ios::oct);
        cout << "\t" << i;


        cout.unsetf(ios::oct);
        cout.setf(ios::hex);
        cout << "\t" << i;

        cout << endl;
    }

}

int main(){


    test();
    system("pause");
    return EXIT_SUCCESS;
}