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 ?


a8508

Recommended Posts

#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);
}

Link to comment
Share on other sites

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...