不明白怎么这样输出结果为一个非我输入的值

#include "pch.h"
#include
using namespace std;

void creat(int *a)
{
for (int i = 0; i < 4; i++)
{
cout << "请输入一个整型数据";
cin >> *(a + i);
cout << endl;
}
}

void order(int *a)
{
int t;
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4 - i; j++)
{
if (a[j] > a[j+1])
{
t = a[j];
a[j] = a[j + 1];
a[j + 1] = t;
}
}
}
}
void out(int *a)
{
cout << "输出结果如下:" << endl;
for (int i = 0; i < 4; i++)
{
cout << "第" << i + 1 << "个整型为" << a <<*a << endl;//这个地方有问题。
}
}

void main()
{
int *a = new int[4];
creat(a);
order(a);
out(a);
delete []a;
}

输入修改为 cin>>a[i];