SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: Arsys en Lunes 25 de Agosto de 2003, 18:13
-
Pues eso, estoy escribiendo un programa que lea 10 letras y que muestre la que va en primer lugar en el alfabeto.
He hecho esto hasta ahora:
#include <stdio.h>
int main(int argv, char **argc)
{
int num, ch;
for(num=1; num<11; num++)
{
printf("Introduzca la letra %d: ", num);
ch=getche();
printf("n");
}
printf("n");
system("pause");
}
Pero no se me ocurre como hacer para ordenar las letras.
A ver si alguien me da alguna idea.
Saludos :hippi:
-
Evalua los valores ASCII de los caracteres :good:
-
:think:
Saludos :hippi:
-
muestra solo la primera o las ordena todas? si es la 1a, es bastante simple:
#include <stdio.h>
int main(int argc, char **argv)
{
int num;
char ch,menor=1000;
for(num=1; num<11; num++)
{
printf("Introduzca la letra %d: ", num);
ch=getchar();
if(ch<menor) menor=ch;
printf("n");
}
printf("nnLa menor es la %c",menor);
system("pause");
}
-
Ahora si que lo he entendido, gracias.
Saludos :hippi:
-
He ido a probar tu código pero no funcionaba bien, lo he corregido un poco, el menor debía de estar puesto como variable int, y getchar() no sirve, hay que usar getche().
Lo que no entiendo es la diferencia que hay entre getche() y getchar(), lo único que se es que con getche() funciona y con getchar() no, a ver si alguien me lo puede aclarar.
Este es el código modificado:
#include <stdio.h>
int main(int argv, char **argc)
{
int num, menor=1000;
char ch;
for(num=1; num<11; num++)
{
printf("Introduzca la letra %d: ", num);
ch=getche();
if(ch<menor)menor=ch;
printf("n");
}
printf("n");
printf("La primera letra es %c nn", menor);
system("pause");
}
Saludos :hippi:
-
lo del menor como int debe ser porque lo inicialice como 1000 y no me acorde que el valor maximo de un char es 255... y getche()... no se