Jump to content

bom dia, eu estou com alguns problemas em resolver este projeto que o meu stor me pediu para fazer, alguém pode me ajudar ?


Recommended Posts

Posted

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#define MAX_PRODUTOS 30

typedef struct aluno {
    char n_aluno[30];
    int idade;
    char nome;
}Aluno;


int leAlunos(Aluno aluno[], int idade, char n_aluno) {

    printf("\n\n");
    printf("N_Aluno: "); aalush(stdin);
    scanf("%s", &aluno[n_aluno].nome);
    printf("Idade: "); aalush(stdin);
    scanf("%d",&aluno[n_aluno].idade);
    printf("Nome: "); aalush(stdin);
    scanf("%s", &aluno[n_aluno].nome);

    n_aluno++;
    return n_aluno;
}

int procurarAluno(char A1[], Aluno aluno[], int idade, char n_aluno)
{

    int i;
    for(i=0; i<idade; i++) {
        if(strcmp(aluno[n_aluno].nome)== 0) {
            printf("\n Aluno encontrado! ");
            printf("\n+++++++++++++++++++++++++++++\n");
            printf("\n\nCódigo: %d\n", i+1);
            printf("n_aluno.......: %s\n", aluno[i].n_aluno);
            printf("Idade......: %d\n", aluno[i].idade);
            printf("Nome.......: %s\n", aluno[i].nome);
            printf("\n++++++++++++++++++++++++++++++\n");
            return i;
        } else
            printf(" \n Aluno não encontrado!\n ");
            return -1;
    }
}

void listarAluno(Aluno aluno[], int idade, char n_aluno) {
    int i;

    for (i=0; i<n_aluno; i++) {

        printf("\n\nCódigo: %d\n", i+1);

        printf("N_Aluno.......: %s\n", aluno[i].n_aluno);

        printf("Idade......: %d\n", aluno[i].idade);

        printf("Nome.......: %s\n", aluno[i].nome);

        printf("\n+++++++++++++++++++\n\n");
    }
}

int removerAluno(Aluno aluno[], int idade, int posicao, char n_aluno) {

    int indice = posicao;

    int i = 0;

    if (posicao == n_aluno-1) {

        n_aluno--;
    }
    else {
        for (i=indice; i<n_aluno; i++) {
            aluno[i] = aluno[i+1];
        }
    }

    n_aluno--;
    return n_aluno--;
}

int menu() {

    system ("cls");

    int opcao;

    printf("\n\n ==== MENU DE OPÇÕES ====\n");

    printf("0 - SAIR \n");

    printf("1 - Registar um novo aluno \n");

    printf("2 - Modificar dados de um aluno \n");

    printf("3 - Apagar aluno \n");

    printf("4 - Mostrar alunos da turma ordenados de forma crescente pelo número \n");

    printf("5 - Pesquisar aluno \n");

    printf("6 - Lista todos os alunos \n");

    printf("\nEscolha uma opção: ");

    scanf("%d", &opcao);

    return opcao;

}

void main()
{
    Aluno aluno[MAX_PRODUTOS];
    int i;
    int n_aluno = 0;
    int opcao_selecionada;
    char A1[30];
    int posicao;

    setlocale(LC_ALL,"");

    do {
        opcao_selecionada = menu();
        switch(opcao_selecionada) {
            case 0: break;
            case 1:
                n_aluno = leAluno(aluno,n_aluno);
                break;
            case 2:
                printf(" \n Digite o aluno que quer visualizar: ");
                scanf("%s",&A1);
                posicao=procurarAluno(A1, nome, n_aluno);
                system ("pause");
                break;
            case 3:
                listarAluno(nome,n_aluno);
                system ("pause");
                break;
            case 4:
                printf(" \n Digite o aluno que quer eleminar: ");
                scanf("%s",&Al);
                posicao=procurarAluno(Al, nome,n_aluno);
                if(posicao!=-1)
                    n_aluno=removerAluno(posicao, nome, n_aluno);
                system("pause");
                break;
            default:
                printf("\n\n A Opção %d não é válida.\n\n ",opcao_selecionada);
                system ("pause");
                break;
        }
    }while (opcao_selecionada != 0);
}

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...