Manipular cadenas

(1/2) > >>

mili03:
otra preguntita me disculpan pero no se a quien preguntar , es otro programita en C es sobre un menu el ejercicio dice que realice un programa que pida una cadena de caracteres y que muestre un menu con las siguienetes opciones
1.cadena al reves
2.numero de caracteres
3.cadena en mayuscula
4.cadena en minusculas
5.salir
esto es lo que llevo hasta ahora, lo estoy haciendo con while pero no puedo lograr que me muestre la opcion si pulso el num 1 si no q me sale corrido, ayudenme porfa, ha me han dicho que con case es mejor pero no se talves me proporcionan un ejemplo para intntarlo Gracias por Todo.
aca les muestro lo que e intentado hacer:
Código:

#include <stdio.h>
void main (void)
{
    char c, palabra[21];
    int i;
int opcion;

printf("Teclee la palabra que decee:\n");
    scanf("%s", palabra);
    i =0;
printf("Eliga la opcion que quiere \n:");
printf("\n1-->numero de caracteres");
printf("\n2-->cadena al revez");
printf("\n3-->cadena en mayuscula");
printf("\n4-->cadena en minuscula");
printf("\n5-->salir\n  opcion:");
scanf("%s",&opcion);

  
    while(palabra[i++] != '\0');
      
    printf("%s tiene %d letras.\n", palabra, i);
    printf("%s escrita al revés es: ", palabra);
    while (i >= 0)
        printf("%c", palabra[i--]);


}



Littlehorse:
mili03, títulos descriptivos por favor. :)

Prueba con un switch-case para las opciones y con funciones para cada tarea.

Saludos

@synthesize:
http://c.conclase.net/librerias/?ansilib=string#inicio

leogtz:
Deber usar int main(), no void main(), un compilador decente no te dejaría compilar.

nicolas_cof:
mili03, ademas de lo ya mencionado

Código:

int main( void ) {  }

http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html

Otra recomendacion seria usar fgets() y no scanf()

Y otra seria no abusar del uso de printf() ya que con uno podrias englobar todas esas cadenas

Salu10.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente