Primeiro, na função main(), você declara um vetor de float com tamanho de uma variável que ainda não foi definida. Para informar um tamanho de um vetor, esse tamanho precisa ser constante. Para que seja dinâmico como exige esse exercício e sem valor máximo de elementos, você vai precisar declarar esse vetor em tempo de execução da seguinte forma:
auto *vet = new float[tam];
Isso vai criar a quantidade de elementos que o usuário pedir.
No final, você precisa chamar o delete para excluir da memória esses elementos:
delete[] vet
O segundo problema, na função inversavetor(), você começa a mostrar os elementos a partir do índice igual ao tamanho do vetor. Isso significa que um vetor de 3 posições, por exemplo, invertido vai mostrar o elemento de posição 3. Porém, o último elemento de um vetor de 3 posições é 2 por que a contagem começa em 0. Veja: vet[0], vet[1] e vet[2]. Então, você vai precisar mudar para que i seja tam - 1.
O terceiro problema é na função crescentevetor(), e aqui tem vários problemas. Você errou o for da linha 52. Você seta a variável y, mas faz operações na variável j. Então troque para j e sete ela para i + 1. Outro problema aqui é o cast implícito do elemento do vetor para int que é o tipo da variável aux. aux deveria ser do tipo float. Aqui também tem o problema do índice dos vetores lá no último for tem que trocar para i = tam - 1 e na condição do for tem que ser i >= 0 por que o índice 0 é o primeiro elemento.
Não tive muito tempo para escrever essa resposta então acho que não expliquei muito bem. Observe o código abaixo com as modificações e faça testes para garantir que está funcionando como esperado.
#include<stdio.h>
#include <cstdlib>
#include <math.h>
#include <iostream>
#define tam1000
using namespace std;
void lervetor (int tam, float v[]);
void inversavetor (int tam, float v[]);
void crescentevetor (int tam, float v[]);
int i, y, j;
float aux;
int main (){
int tam;
cout <<"Digite o tamanho do vetor: ";
cin >> tam;
auto *const vet = new float[tam];
cout <<"Digite os valores do vetor: \n";
lervetor (tam, vet);
cout<< endl;
cout <<"Sua ordem inversa eh: \n";
inversavetor (tam, vet);
cout << endl;
crescentevetor (tam, vet);
delete[] vet;
system ("pause");
return EXIT_SUCCESS;
}
void lervetor (int tam, float v[]){
int i;
for (i=0; i<tam; i++){
cout <<"V[" << i << "]: ";
cin >> v[i];
}
}
void inversavetor (int tam, float v[]){
int i;
for (i = tam - 1; i >= 0; i--) {
cout << v[i] << endl;
}
cout <<"\n";
}
void crescentevetor (int tam, float v[]){
int i;
for (i = 0; i < tam; i++){
for(j = i + 1; j < tam; j++){
if (v[i] > v[j]){
aux = v[i];
v[i] = v[j];
v[j] = aux;
}
}
}
cout << "Elementos ordenados (crescente): \n";
for( i = 0; i < tam; i++){
cout << v[i] << endl;
}
cout << endl;
cout << "Elementos ordenados (decrescente): \n";
for(i = tam - 1; i >= 0; i--){
cout << v[i] << endl;
}
cout << endl;
}