problema al ejecutar

Iniciado por HBN, 31 Diciembre 2017, 18:20 PM

0 Miembros y 1 Visitante están viendo este tema.

HBN

Hola a todos

Tengo la siguiente estructura:
#include <stdio.h>
#define u 3.14
int main (){
   int a = 12;
   float b =  13.5;
   char c = 'e';
   printf("%i %.2f %c",a,b,c);
   printf ("\ndigite el valor de la variable c:");
   scanf("%c",&c);           
   printf("el valor es :%c",c);
   char x[50];
   printf("\ndigite su nombre :");
   gets(x);          //aca si pongo un scanf me funciona pero no me deja poner el apellido
   printf("\nsu nombre es: %s",x);
   return 0;
   
}
la ultima parte donde esta el gets se la salta ¿alguno me puede ayudar?
Gracias

MAFUS

Este es el famoso problema de que debes vaciar el buffer después del scanf para sacar el \n antes de adquirir el siguiente dato.
Después del scanf escribe
while(getchar()!='\n');