1
Aprender a programar desde cero / C printf scanf isalpha saber si usuario introduce caracter consola lenguajeC
« en: 07 de Mayo 2017, 01:57 »
Hola gente de la comunidad tengo un problema con scanf.
Cuando hago esto funciona:
Pero cuando hago esto no:
Porfavor si me puede ayudar, muchas gracias.
Cuando hago esto funciona:
Código: [Seleccionar]
#include <stdio.h>
#include <ctype.h>
int main (){
float a='b';
int escaracter=0,terminar=0;
escaracter=(int)a;
terminar=isalpha(escaracter);
printf("terminar=%d\nescaracter=%d\na=%f\n",terminar,escaracter,a);
if(terminar!=0){
printf("ES CARACTER\n");
return 1;
}
printf("NO ES CARACTER\n");
return 0;
}
Pero cuando hago esto no:
Código: [Seleccionar]
#include <stdio.h>
#include <ctype.h>
int main (){
float a=0;
int escaracter=0,terminar=0;
printf("Ingrese NUMERO o CARACTER\n");
scanf("%f",&a);
escaracter=(int)a;
terminar=isalpha(escaracter);
printf("terminar=%d\nescaracter=%d\na=%f\n",terminar,escaracter,a);
if(terminar!=0){
printf("ES CARACTER\n");
return 1;
}
printf("NO ES CARACTER\n");
return 0;
}
No entiendo porque scaf("%f",&a); si le pongo un caracter no me guarda nada, me guarda cero, como si ubiera ingresado un cero (0).Porfavor si me puede ayudar, muchas gracias.