Ir ao conteúdo
  • Cadastre-se
Visitante

C Diario eletrônico em C

Recommended Posts

Visitante

(programa utilizado Codeblocks) - Olá, gostaria de pedir ajuda com um programa que desenvolvi, mas que precisa ser modifica pra adicionar a ele struct, função e arquivo.... vou colocar logo abaixo o que precisa ser feito e o programa feito(1 parte).

 

1) Cada opção do menu deve ser implementada como uma função

2) Os dados devem ser armazenados em arquivos

3) Os dados dos alunos devem ser definidos por uma struct

 

 

Desde já obrigado.


 

#include <stdio.h>
#include <stdlib.h>
#define alunos 100
int main(void){
    int qt, i, n, aux, cont;
    char nome[alunos][50];
    float p1[alunos], p2[alunos], t[alunos], nf[alunos], soma, maior, menor, media;
    printf("  Escolha uma Opcao\n");
    printf("\n 1-Definir a quantidade de alunos");
    printf("\n 2-Cadastro de alunos e notas");
    printf("\n 3-Listagem das notas");
    printf("\n 4-Resultado final");
    printf("\n 5-Maior nota da turma");
    printf("\n 6-Menor nota da turma");
    printf("\n 7-Media da turma");
    printf("\n 8-Sair\n");
    do{
        do{
            printf("\n\nOpcao\n\n");
            scanf("%d",&n);
            if(n<1|| n>8){
                printf ("Opcao invalida, digite um numero de 1 a 8.\n");
            }
        } while (n<1 || n>8);
        if(n==1){
            do{
                printf ("Digite a quantidade de alunos: ");
                scanf ("%d", &qt);
                if (qt<0 || qt>100){
                    printf ("Digite um valor entre 0 e 100\n");
                }
            } while (qt<0 || qt>100);
        } else {
            if(n==2){
                for(i=0; i<qt; i++){
                    printf("Nome Aluno %d:\n", i+1);
                    scanf("%s", nome[i]);
                }
                printf("\nInformando as notas dos alunos \n");
                for (i=0; i<qt; i++){
                    printf ("\nAluno %d\n", i+1);
                    do{
                        printf ("Nota p1: ");
                        scanf ("%f", &p1[i]);
                        if (p1[i]<0 || p1[i]>40){
                            printf ("Nota invalida. Digite um valor entre 0 e 40.\n");
                        }
                    }while (p1[i]<0 || p1[i]>40);
                    do{
                        printf ("Nota p2: ");
                        scanf ("%f", &p2[i]);
                        if (p2[i]<0 || p2[i]>40){
                            printf ("Nota invalida. Digite um valor entre 0 e 40.\n");
                        }
                    } while (p2[i]<0 || p2[i]>40);
                    do{
                        printf ("Nota t: ");
                        scanf ("%f", &t[i]);
                        if (t[i]<0 || t[i]>20){
                            printf ("Nota invalida. Digite um valor entre 0 e 20.\n");
                        }
                    } while (t[i]<0 || t[i]>20);
                }
            } else{
                if(n==3){
                    printf("--lista dos alunos e suas notas--");
                    for (i=0; i<qt; i++){
                        printf("\n %s - %.2f %.2f %.2f", nome[i], p1[i], p2[i], t[i]);
                    }
                } else{
                    if(n==4){
                        for(i=0; i<qt; i++){
                            nf[i]=p1[i]+p2[i]+t[i];
                            if(nf[i]>=60){
                                printf("%s -- aprovado | %f\n", nome[i], nf[i]);
                            }
                        }
                        for(i=0; i<qt; i++){
                            nf[i]=p1[i]+p2[i]+t[i];
                            if(nf[i]<60){
                                printf("%s -- reprovado | %f\n", nome[i], nf[i]);
                            }
                        }
                    } else {
                        if(n==5){
                            aux = nf[0];
                            cont=0;
                            for(i=0; i<qt; i++){
                                if(aux<nf[i]){
                                    cont=i;
                                    aux=nf[i];
                                }
                            }
                            printf("\n\nO aluno %s obteve maior nota de %.2f pontos\n",nome[cont],nf[cont]);
                        } else {
                            if(n==6){
                                aux = nf[0];
                                cont=0;
                                for(i=0; i<qt; i++){
                                    if(aux>nf[i]){
                                        cont=i;
                                        aux=nf[i];
                                    }
                                }
                                printf("\n\nO aluno %s obteve menor nota de %.2f pontos\n",nome[cont],nf[cont]);
                            } else {
                                if (n==7){
                                    for(i=0; i<qt; i++){
                                        soma=soma+nf[i];
                                        media=soma/qt;
                                    }
                                    printf("A media da turma foi de %.2f\n", media);
                                }
                            }
                        }
                    }
                }
            }
        }
    }while(n!=8);
    return EXIT_SUCCESS;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  •    0
    Visitante
    2 minutos atrás, vangodp disse:

    você ja estudou tudo isso? Em que parte você precisa ajuda?

    Ja estudei, tenho dificuldade para utilizar a função e struct... tentei fazer de varias formas, mas todas davam erro. Todos os jeitos que eu tento fazer, aparece algo de errado. Se puder fazer para mim essas partes, me ajudaria bastante a entender e como fazer programas futuros.

     

    Obrigado!!

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    16 horas atrás, gamerdragon disse:

    Ja estudei, tenho dificuldade para utilizar a função e struct... tentei fazer de varias formas, mas todas davam erro. Todos os jeitos que eu tento fazer, aparece algo de errado. Se puder fazer para mim essas partes, me ajudaria bastante a entender e como fazer programas futuros.

    É assim mesmo, é importante que você tente resolver por si só, aconselho a assistir algumas aulas do link abaixo, as aulas 35~38: https://programacaodescomplicada.wordpress.com/indice/linguagem-c/

     

    Quando fizer uma tentativa de resolução, poste o código e o erro aqui que a gente ajuda.

    • Curtir 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário

    Criar uma conta

    Crie uma nova conta em nossa comunidade. É fácil!

    Crie uma nova conta

    Entrar

    Já tem uma conta? Faça o login.

    Entrar agora





    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×