Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - McCartney

#1
Programación C/C++ / Ayuda Con Un Programa!
25 Febrero 2013, 00:06 AM
Hola compañeros, soy nuevo en esto de la programación y quería pedirles su ayuda para completar esta tarea, la verdad ya estoy desesperado... De Antemano Gracias

Hacer un programa que emule un registro de alumnos y tenga las siguientes características:
Debe contener el menú siguiente:
A> Altas de Alumno
B> Bajas de Alunmo
C> Consulta de Alumnos
S> Salir

Donde en "Altas" se deberá capturar la siguiente información:
Matrícula del Alumno (Buscarla, y si ya está, avisar y regresar al menú)
Nombre y Apellidos
Años en la Escuela
Número de Créditos Aprobados
(Deberá regresar al menú automáticamente después de finalizar algún registro)

En "Bajas" se deberá pedir la matrícula y buscarla. Si existe sólo se pondrá una marca en el campo de matrícula, indicando que este alumno se dio de baja. Si no existe se deberá mostrar un mensaje y regresar al menú.

En "Consultas" se deberá mostará el siguiente sub-menú y cada opción realizará lo que se indica:
M> Por Matrícula
N> Por Nombre
(Buscar al alumno, mostrar sus datos y decir si el alumno esta aprobando o no los créditos mínimos de 93 por año)
T> Todos
(Mostar todos los alumnos)
R> Regresar al menú

***NOTA: Se debe usar un arreglo de tipo struct.

------------------------------------------------------------------------------------------------------------------------


Ahora: esto es lo que llevo hasta el momento:



#include <stdio.h>
#include <ctype.h>
int main()
{
int rep=0,i=0,band,cont=0,b=0,j=0;
long int busq;
char op,nomb[15];
struct general
{
long int mat;
char nom[15];
char ap_pat[15];
char ap_mat[15];
int anos;
int creditos;
}alumno[50];
while (rep>=0)
{
printf("***PROGRAMA QUE EMULA UN REGISTRO DE ALUMNOS DE LA BUAP***\n");
printf("Elija Una Opcion\n");
printf("A > Alta De Alumno\n");
printf("B > Baja De Alumno\n");
printf("C > Consultas De Alumnos\n");
printf("S > Salir\n");
op=getchar();
op=toupper(op);
switch(op)
{
case 'S':
{
rep=-1;
band=0;
printf("Decidio salir\n");
break;
}
case 'A':
{
band=1;
for (i=cont;i<=cont;i++)
{
printf("Da la matricula del alumno %d\n",i+1);
scanf("%ld",&alumno[i].mat);
busq=alumno[i].mat;
j=0;
while(j<=i-1 && b!=1)
{
if(busq==alumno[j].mat)
{
b=1;
}
else
{
j++;
}
}
if (b==1)
{
printf("Alumno ya inscrito\n");
cont=cont-2;
}
else
{
printf("Dame su nombre\n");
alumno[i].nom=gets(nomb);
printf("%s",alumno[i].nom);
}
}
cont++;
break;
}
default:
{
band=0;
printf("Opción inválida\n");
break;
}
}
if (band!=0)
{
printf("Pulsa cualquier número para que te enseñe de nuevo el menú\n");
scanf("%d",&rep);
getchar();
}
}
}



Mi principal duda es... Al momento de compilar el pedacito que llevo, me aparece error en la sección que contiene:

alumno[i].nom=gets(nomb);

Me podrían indicar como hacerlo correctamente?


Muchas gracias de antemano :)
Saludos!!