Está en la página 1de 2

EJERCICIO 3

Realizar un programa en el cual usando un arreglo de punteros permita al usuario ingresar cinco
frases las cuales deber ser ordenadas alfabeticamente en orden descendente e imprimir las frases
en pantalla.
CODIGO EN C

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#define Max 5

int main(){

char *frases[Max];

char frase [25];

char *letra;

int i,j,n =sizeof(frases)/sizeof (char*); ///sizeof genera el tamaño de una variable

printf("Programa que ordena frases alfabeticamente\n");

for(i=0;i<n;i++){

printf("\nIngrese la Frase %d:",i+1);

fgets(frase,sizeof(frase),stdin);//guarda la longitud de la palabra en la variable frase

letra=strchr(frase,'\n');//localiza o ubica al apuntador letra en los caracteres empezando


por el salto de linea

if(letra!=NULL){//si temp no es un elemento nulo

*letra='\0';

frases[i]=strdup(frase); //strdup:Intenta asignar suficiente memoria para contener la


cadena anterior

for(i=0;i<n;i++){//Ciclo q realiza el proceso de ordenamiento, recorre el apuntador la cadena


para ordenar

for(j=n-1;j>0;j--){

if(strcmp(frases[j],frases[j-1])<0) {

letra= frases[j];

frases[j]=frases[j-1];
frases[j-1]=letra;

printf("\nLas frases ordenadas alfabeticamente en orden descendente son:\n\n");

for(i=n;i>=0;i--){

printf(" %s\n",frases[i-1]);

system("pause");

return 0;

Ejecución

También podría gustarte