ayuda acompletar este codigo

rene
02 de Mayo del 2004
el problema es que genero un lista alearotia con random pero al generar la lista solo me regresa el ultimo numero por que no se como retornar un arreglo de antemano gracias


elemento lista(){
int i,a[MAX],n,l;
l=a[0];
p("\nELEMENTOS A ORDENAR: ");
s("%d",&n);
fflush(stdin);
for (i=0;i<n;i++){
a[i]=rand();
p("%d ",a[i]);
l=a[i];
}
getchar();
p("%d ",l);
getchar();
return l;
}


void burbuja(int a[], int n){
int i,j,aux;
for(i=2;i<n;i++){
for (j=n;j>=i;j--){
if( a[j-1] > a[j] ){
aux = a[j-1];
a[j-1] = a[j];
a[j] = aux;
}
}
}
}

void imprime(elemento a[],int n){
int i;
for ( i=0 ; i<n ; i++){
p("%i\n,",a[i]);


}
}

void main(){
int opc,n,l1[MAX],l2[MAX],i;
clrscr();
do{
p("\t\t********MENU*********");
p("\n1) BURBUJA \n2) INSERCION DIRECTA \n3) SELECCION DIRECTA \n4) SHELL");
p("\n5) QUICK SORT \n6) MEZCLA \n7)SALIR");
p("\t\t\t TU OPCION ES: ");
s("%i",&opc);
fflush(stdin);
switch(opc){
case 1 : p("\nBURBUJA.....\n");
l1[i]=lista();

burbuja(l1,n);
p("\nLISTA ORDENADA\n");
imprime(l1,n);
break;

es todo lo que llevo y no marca errores



noel solw
02 de Mayo del 2004
Te envio una parte del programa, donde se genera toda la lista aleatoria y tambien puedes ver el resultado en la pantalla.
El resto lo dejo a tu cargo.

noel solw
02 de Mayo del 2004
Aqui esta el programa:

// program test.cpp
// origina una lista aleatoria
// written in Borland C++, ver 4.5

#include <conio.h>
#include <stdlib.h>
#include <stdio.h>

const int MAX = 12;

void lista(int a[],int n)
{
randomize();
for (int i=0;i<n;i++)
a[i]=random(100);
}

void imprime(int a[],int n)
{
int i;
for (i=0 ; i<n ; i++)
printf("%6d",a[i]);
puts(" ");
}

void main()
{
int a[MAX];
lista(a,MAX);
imprime(a,MAX);
}