C/Visual C - programa no compila en dev c++

 
Vista:

programa no compila en dev c++

Publicado por Rafa (1 intervención) el 23/03/2013 19:51:19
Alguien sabria decirme porque este codigo no se compila.Uso Dev c++, y al compilarlo aparece la pantalla de compilacion pero no avanza ,ni me dice los errores ni nada.

La idea del ejercicio es hacer una agenda que lea los datos al principio de un fichero llamado "agenda.dat", se haga el uso que se desee de la agenda (añadir datos y demas), y luego volver a grabar todos los datos en el fichero.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

main()
{
struct
{ char nombre[41];
char direccion[61];
char movil[13];
char mail[41];
short int dia;
short int mes;
short int anyo;
}persona[100];

FILE*fichero;
char temporal[41];
char nombuscar[41];
int totalpex=0;
int opcion;
int i;
int a;

fichero=fopen("agenda.dat","rb");

if (fichero==NULL)
{ printf("No se pudo abrir el fichero.\n");
exit(1);
}
while(!feof(fichero))
{

fgets(persona[totalpex].nombre,80,fichero);
fgets(persona[totalpex].direccion,80,fichero);
fgets(persona[totalpex].movil,80,fichero);
fgets(persona[totalpex].mail,80,fichero);
fgets(persona[totalpex].dia,80,fichero);
fgets(persona[totalpex].mes,80,fichero);
fgets(persona[totalpex].anyo,80,fichero);
totalpex++;

}
fclose(fichero);

do
{
printf ("Escoja una opcion.\n");
printf ("1.Añadir nueva persona.\n");
printf ("2.Mostrar todos los nombres.\n");
printf ("3.Buscar datos de una persona.\n");
printf ("4.Salir.\n");

gets(temporal);
sscanf(temporal,"%d",&opcion);

switch(opcion){
case 1:
if (totalpex==99)
{printf("Numero maximo de personas alcanzado.\n");
break;
}
else
{
totalpex++;
printf("Nombre:");
gets(persona[totalpex].nombre);
printf("Direccion:");
gets(persona[totalpex].direccion);
printf("Numero movil:");
gets(persona[totalpex].movil);
printf("Email:");
gets(persona[totalpex].mail);
printf("Dia de nacimiento:");
gets(temporal);
sscanf(temporal,"%hd",persona{totalpex}.dia);
printf("Mes de nacimiento:");
gets(temporal);
sscanf(temporal,"%hd",persona[totalpex].mes);
printf("Anyo de nacimiento:");
gets(temporal);
sscanf(temporal,"%hd",persona[totalpex].anyo);
}
opcion=0;
break;

case 2:
if (totalpex==0)
printf("No hay ninguna persona en la agenda");
else{
for(i==0;i<=totalpex;i++)
printf("%s.\n", persona[i].nombre);
}
break;

case 3:
printf("Nombre de la persona:),
gets(nombuscar);
a=0;

for(i=0;i<=totalpex;i++)
{
if (strcmp(nombuscar,persona[i].nombre)==0);
{
printf("Nombre: %s.\n",persona[i].nombre);
printf("Direccion: %s.\n",persona[i].direccion);
printf("Movil: %s.\n",persona[i].movil);
printf("Mail: %s.\n",persona[i].mail);
printf("Fecha de nacimiento: %hd - %hd - %hd.\n",persona[i].dia,persona[i].mes,persona[i].anyo);
a++;
}
}
if (a=0)
printf("La busqueda no ha dado resultado.\n");
break;

case 4: /*salida*/
printf("Fin del programa");
break;
default:
printf("Opcion no valida.\n");
break;
}
}while (opcion!=4);

/*Grabar fichero*/
fichero=fopen("agenda.dat","wb");

if (fichero==NULL)
{ printf("No se pudo abrir el fichero.\n");
exit(1);
}
for(i=0;i<=totalpex;i++)
{
fputs(persona[i].nombre,fichero);
fputs("\n",fichero);
fputs(persona[i].direccion,fichero);
fputs("\n",fichero);
fputs(persona[i].movil,fichero);
fputs("\n",fichero);
fputs(persona[i].mail,fichero);
fputs("\n",fichero);
fputs(persona[i].dia,fichero);
fputs("\n",fichero);
fputs(persona[i].mes,fichero);
fputs("\n",fichero);
fputs(persona[i].anyo,fichero);
fputs("\n",fichero);
}
fclose(fichero);

system("pause");
}

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

programa no compila en dev c++

Publicado por Javier (1 intervención) el 07/05/2013 23:35:01
Copio/pego tu código e intento compilar a pelo y me dice todo esto....... (pruebaweb es como llamél fichero)

Compilador: Default compiler
Ejecutando g++.exe...
g++.exe "C:\Users\Javier\Documents\PruebaWeb.cpp" -o "C:\Users\Javier\Documents\PruebaWeb.exe" -I"C:\Dev-Cpp\lib\gcc\mingw32\3.4.2\include" -I"C:\Dev-Cpp\include\c++\3.4.2\backward" -I"C:\Dev-Cpp\include\c++\3.4.2\mingw32" -I"C:\Dev-Cpp\include\c++\3.4.2" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
C:\Users\Javier\Documents\PruebaWeb.cpp: In function `int main()':
C:\Users\Javier\Documents\PruebaWeb.cpp:76: error: expected `)' before '{' token

C:\Users\Javier\Documents\PruebaWeb.cpp:97: error: missing terminating " character
C:\Users\Javier\Documents\PruebaWeb.cpp:98: error: expected `)' before ';' token
C:\Users\Javier\Documents\PruebaWeb.cpp:143: error: invalid conversion from `short int' to `const char*'
C:\Users\Javier\Documents\PruebaWeb.cpp:143: error: initializing argument 1 of `int fputs(const char*, FILE*)'
C:\Users\Javier\Documents\PruebaWeb.cpp:145: error: invalid conversion from `short int' to `const char*'
C:\Users\Javier\Documents\PruebaWeb.cpp:145: error: initializing argument 1 of `int fputs(const char*, FILE*)'
C:\Users\Javier\Documents\PruebaWeb.cpp:147: error: invalid conversion from `short int' to `const char*'

C:\Users\Javier\Documents\PruebaWeb.cpp:147: error: initializing argument 1 of `int fputs(const char*, FILE*)'

Ejecución Terminada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar