Consult by number, age of a student

Asked

Viewed 32 times

-1

I’m doing a program where I need to consult a student(structure) who has age, name, gender, student process number. To consult for the following paramaters below, put only a little code but I need the 11 paramateros. What put in if() is wrong

void consultar()
{
    puts("1 - Número");
    puts("2 - Nome");
    puts("3 - Língua");
    puts("4 - Almoço");
    puts("5 - Idade");
    puts("6 - Entre idade");
    puts("7 - A partir de uma idade");
    puts("8 - Todos os ativos");
    puts("9 - Por género");
    puts("10 - Todos");
    puts("11 - Parte do nome");
    puts("0 - Voltar");
} 
typedef struct escola
{
    int n_aluno;
    char nome[30],lingua[30],almoco[30];
    int gen, idade, ativo, temp_lingua, temp_almoco;
}aluno;
int a,cont,op,i,n,n3,p,n2,n4,n5,n6,ocultar,guardar,t_aluno=3;
    char str[30],c[30],gene,resp;
    aluno temp,al[30]={{1,"Nuno aguileira","Espanhol","Refeitório",1,16,1},{2,"João Almeida","Francês","Casa",1,15,2},
    {3,"Francisco rodrigo","Espanhol","Cafetaria",1,17,1}};

case 5:     
                                do
                                {
                                    system("cls");
                                    printf("\n\nQual a idade do aluno: ");
                                    scanf("%d",&n6);    
                                    if(n6==al[30].idade) 
                                    {
                                        printf("\n\nNúmero de processo: %d",al[n-1].n_aluno);
                                        printf("\nNome: %s",al[n-1].nome);
                                        printf("\nLíngua: %s",al[n-1].lingua);
                                        printf("\nAlmoço: %s",al[n-1].almoco);
                                        printf("\nGênero: %d",al[n-1].gen);
                                        printf("\nIdade: %d",al[n-1].idade);
                                        printf("\nAtivo: %d",al[n-1].ativo);
                                    }
                                    else
                                    {
                                        printf("Aluno não existe");
                                        fflush(stdin);
                                        getchar();
                                    }
                                }
                                while(n6==temp.idade);
                                break;
                        case 6:
                                do
                                {
                                    system("cls");
                                    printf("\n\nQual a idade do aluno. Escolha entre 2 números: ");
                                    scanf("%d",&n6);    
                                    if(n6==al[30].idade) 
                                    {
                                        printf("\n\nNúmero de processo: %d",al[n-1].n_aluno);
                                        printf("\nNome: %s",al[n-1].nome);
                                        printf("\nLíngua: %s",al[n-1].lingua);
                                        printf("\nAlmoço: %s",al[n-1].almoco);
                                        printf("\nGênero: %d",al[n-1].gen);
                                        printf("\nIdade: %d",al[n-1].idade);
                                        printf("\nAtivo: %d",al[n-1].ativo);
                                    }
                                    else
                                    {
                                        printf("Aluno não existe");
                                        fflush(stdin);
                                        getchar();
                                    }
                                }
                                while(n6==temp.idade);
                                break;  
                    }       
                }
                while(n<1 || n>t_aluno);
                break;//só um pouco do código

  • post a complete, compilable program.....

1 answer

-1

I considered using a 'cycle for' that went through all the elements of the structure and when I found for example the student with the same number of student q the user then entered return all the desired values.

Each search case of a different parameter would use a cycle with the same idea by changing the comparison parameter (number, name, language...)

  • I have already found out with a for and an if() cycle. Thank you for your attention

Browser other questions tagged

You are not signed in. Login or sign up in order to post.