Antes de nada decir que no se demasiada programacion en C, soy un principiante como quien dice pero acepto cualquier explicacion.
Estoy haciendo un programa, un tanto simple, para hablar con el ordenador, o esa es mi intencion (nada complicado, sino cosas previstas, como decir nombres que los guarde y luego los use, preguntas para hacer/decir cosas segun la respuesta... sencillo).
De momento mi programa saca por pantalla um mensaje presentandose y preguntado si le quieres cambiar el nombre. Si escribes si te preguntara como quieres llamarle y deveras introducir un nombre, una vez introducido te dara las gracias y mostrara su nuevo nombre (Gracias, ahora me llamo <nombre>) pero cuando te pregunta si quieres cambiarle el nombre le dices que no devera responderte (cualquier cosa, en mi caso: ¿No? Vale...) y preguntarte como te llamas, despues de introducir tu nombre te dira que esta encantado de conocerte y tu nombre (Encantado de conocerte <nombre>), pero si no introduces ni si ni no te dira que no te entiende (ya que no se mucha programacion de momento amoldo mi programa a lo poco que se).
Espero haberme explicado mas o menos bien. Bueno, ahora os dejare el codigo que e hecho para pedir opiniones y saber si esta bien o mal, de hecho no puedo compilarlo ahora y no se si esta bien o no. Gracias de antemano.
Código:
#include <stdio.h>
#include <conio.h>
#include <string.h>
void main()
{
char pregunta1[2], nombre1[10], nombre2[20], si[4]={'s','i','\0'}, no[4]={'n','o','\0'};
clrscr();
printf ("Hola, me llamo Ordenador. ¿Quieres cambiarme el nombre? ");
scanf ("%s", &pregunta1);
if (pregunta1==si)
{
printf ("Vale, ¿Como me llamare? ");
scanf ("%s", &nombre1);
printf ("Gracias, ahora me llamo %s.", nombre1);
}
else if (pregunta1==no)
{
printf ("¿No? Vale... Por cierto, ¿Como te llamas? ");
scanf ("%s", &nombre2);
printf ("Encantado de conocerte %s.", nombre2);
}
else
{
printf ("Perdona, no te entiendo.");
}
getch();
}