Buenas noches saludos ten go problema para validcar datos de entradas tengo que hacer un cajero automatico y necesito validar entrada de datos es decir si pido que marque numeros , que el usuario marque numero pues , que si  pido caracter pues coloque caracter que si ingresa algo diferente que mande un mensaje voy a colocar este codigo para que me expliquen con este simple codigo no use switch case , lo hice asi pero AYUDEME tengo ansias de aprender , 
- #include <stdio.h> 
-   
- //Ejercicio 3 del tema "Variables y Operadores Básicos": 
- //Programa que pida la temperatura en grados Celsius y la convierta a grados 
- //Fahrenheit (y viceversa) mostrando en pantalla un mensaje del tipo  
- //“xxx.xx grados Celsius son yyy.yy grados Fahrenheit” 
-   
-   
- int main(){ 
-   
- 	float c , f; 
- 	int opcion; 
-   
- 	//pido datos  
- 	printf("para convertir celsius a fahrenheit presione 1\n"); 
- 	printf("para convertir fahrentir a celsius presione 2\n"); 
-   
-   
- 	if (opcion==1){ 
-   
- 		printf("ingrese los grados celsius:"); 
-   
- 		f=9.0/5.0*c+32.0; 
- 		//muestro resultados 
- 		printf("%.2f grados celsius son %.2f grados fahrenheit \n\n",- c ,- f );
 
-   
- 	} 
-   
-   
- 	else   {printf("ingrese los grados fahreint :"); 
- 		//implemento formula 
-   
- 		c=(f-32.0)*5.0/9.0; 
-   
-   
- 		printf("%.2f grados fahreint son %.2f grados celsius \n\n",- f ,- c );
 
- 	} 
-   
-   
-   
-   
- 	return 0; 
- } 
 ayudeme a validar las entradas de este codigo para guiarme de los demas codigo que haga si me ayudan agradeceria que DOCUMENTARAS el codigo para saber soy nuevoo 
Mod: Los códigos deben ir en etiquetas GeSHi