Do you have any idea why the scanf in alegereStudent doesn't work? The console let me write random things, in empty lines and is showing random numbers after the printf. I'm trying to do a beginner project but I don't know why this struct won't let me do the scanf as I want.
Code:
#include<stdio.h>
struct student
{
char numeStudent[20];
char prenumeStudent[20];
int idStudent;
float medieAdmitere;
};
struct profesor
{
char *numeProfesor[20];
char *prenumeProfesor[20];
char *domeniu[20];
};
void alegereStudent( struct student stud){
printf("Introduceti Numele: %s", stud.numeStudent);
scanf("%s\n",&stud.numeStudent);
printf("Introduceti Prenumele:%s",stud.prenumeStudent);
scanf("%s\n",&stud.prenumeStudent);
printf("Introduceti ID-ul studentului:%d",stud.idStudent);
scanf("%d\n",&stud.idStudent);
printf("Introduceti Media de admitere:%f",stud.medieAdmitere);
scanf("%f\n",&stud.medieAdmitere);
};
int main(void)
{
int intrDate=0,cautDate=0,listDate=0,iesire=0,desprStudenti=0,desprProfesori=0,inapoi=0;
struct student stud;
printf("Meniu principal:\n\n");
printf("1.Introducere date. %d\n",intrDate);
printf("2.Cautare date.%d\n",cautDate);
printf("3.Listare date.%d\n",listDate);
printf("0.Iesire Aplicatie.%d\n",iesire);
printf("Alegeti o optiune:");
scanf("%d,%d,%d,%d",&intrDate,&cautDate,&listDate,&iesire);
if(intrDate==1){
printf("1. Despre studenti %d\n",desprStudenti);
printf("2. Despre profesori\n");
printf("3. Revenire la meniul principal\n");
printf("Alegeti o optiune:");
scanf("%d",&desprStudenti);
}
if(desprStudenti==1)
alegereStudent(stud);
return 0;
}