El problema me ha surgido cuando pregunto al usuario que tipo de valor desea ordenar, en ese momento tengo que crear un array en función del tipo de valor que haya seleccionado el usuario, he hecho un switch que declare la variable en funcion de una variable, mejor pongo el código:
Código:
C no permite hacer este tipo de cosas, o hay algún error en mi código ?#include <stdio.h> #include <stdlib.h> #include <conio.h> //Declaracion de prototipo void entra_valor(char mensaje[],int* valor); void pinta_encabezado(); int main(int argc, char *argv[]){ char mensajes[3][100]={ {"Introduzca el numero de elementos: "}, {"Tipo de valores a ordenar:\n (1)Num Entero (2)Num Decimal (3)Caracter (4)Cadenas: "}, {"En orden:\n (1)Mayor a menor (2)Menor a mayor : "}, }; int parametros[3]; //Numero elementos,Tipo de valores y Orden respectivamente int i,j; pinta_encabezado(); for(i=0;i<3;i++){ entra_valor(mensajes[i],¶metros[i]); } switch(parametros[2]){ case 1:int valores[parametros[1]];break; case 2:float valores[parametros[1]];break; case 3:char valores[parametros[1]];break; case 4:char valores[parametros[1]][];break; } system("PAUSE"); return 0; } //Valor que es llamada para recoger los parametros necesarios para la ordenacion void entra_valor(char mensaje[],int* valor){ printf("%s",mensaje); scanf("%d",&(*valor)); } //Función que muestra el encabezado del programa void pinta_encabezado(){ printf("+----------------------------------------------------------------------------+\n"); printf("| Programa comparativo de rendimiento |\n"); printf("| de diferentes algoritmos de ordenacion. |\n"); printf("+----------------------------------------------------------------------------+\n"); }
Por favor ayudenme.