Ir ao conteúdo

Posts recomendados

Postado

Olá a todos, estou com um problema com este código a seguir

#include <stdio.h>
#include <stdlib.h>
struct notas{
    float nota_prova1;
    float nota_prova2;
    float nota_prova3;
    float nota_final;
};
struct dados{
    int matricula;
    struct notas da;
};
int main(){
struct dados dados[10];
  printf("Digite a matricula: ");
  scanf("%d", &dados.matricula);
  printf("Informe a 1a. nota: ");
  scanf("%f", &dados.da.nota_prova1);
  printf("Informe a 2a. nota: ");
  scanf("%f", &dados.da.nota_prova2);
  printf("Informe a 3a. nota: ");
  scanf("%f", &dados.da.nota_prova3);
  printf("Matricula: %d\n", dados.matricula);
  printf("Nota da Prova 1: %.2f\n", dados.da.nota_prova1);
  printf("Nota da Prova 2: %.2f\n", dados.da.nota_prova2);
  printf("Nota da Prova 3: %.2f\n", dados.da.nota_prova3);
  dados.da.nota_final = (dados.da.nota_prova1 + dados.da.nota_prova2 + dados.da.nota_prova3) / 3;
  printf("A nota final foi: %.2f\n", dados.da.nota_final);

return 0;
}

O problema é que ele não compila e não estou entendendo o porque, me ajudem

Postado

@Igor Lima Kock

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

int main(){
setlocale(LC_ALL, "");
int z=0;

struct notas{
    float nota_prova1;
    float nota_prova2;
    float nota_prova3;
    float nota_final;
    int matricula;
};
  notas dados[10];
  int i=0;
  for (i;i<10;i++){
  z=z+1;
  printf("Digite a matricula: ");
  scanf("%d",&dados[i].matricula);
  printf("Informe a %dª nota: ",z);
  scanf("%f",&dados[i].nota_prova1);
  printf("Informe a 2ª nota: ",z);
  scanf("%f",&dados[i].nota_prova2);
  printf("Informe a 3ª nota: ",z);
  scanf("%f",&dados[i].nota_prova3);
  printf("Matricula: %d\n", dados[i].matricula);
  printf("Nota da Prova 1: %.2f\n",dados[i].nota_prova1);
  printf("Nota da Prova 2: %.2f\n",dados[i].nota_prova2);
  printf("Nota da Prova 3: %.2f\n", dados[i].nota_prova3);
  dados[i].nota_final = dados[i].nota_prova1 + dados[i].nota_prova2 + dados[i].nota_prova3;
  dados[i].nota_final=dados[i].nota_final/3;
  printf("A nota final foi: %.2f\n",dados[i].nota_final);
}
}

 

Postado
#include <stdio.h>
#include <stdlib.h>

typedef struct {
    double nota1;
    double nota2;
    double nota3;
    double media;
} Notas_t;

typedef struct {
    char matricula[5];
    Notas_t notas;
} Aluno_t;

int main() {
    const int total = 2;

    Aluno_t alunos[total];

    for(int i = 0; i < total; i++) {
        printf("Digite a matrícula: ");
        scanf(" %s", alunos[i].matricula);

        printf("Digite a nota 1: ");
        scanf(" %lf", &alunos[i].notas.nota1);
        printf("Digite a nota 2: ");
        scanf(" %lf", &alunos[i].notas.nota2);
        printf("Digite a nota 3: ");
        scanf(" %lf", &alunos[i].notas.nota3);

        alunos[i].notas.media = (alunos[i].notas.nota1 + alunos[i].notas.nota2 + alunos[i].notas.nota3) / 3;
    }

    for(int i = 0; i < total; i++) {
        printf("--------------------------------------------- \n");
        printf("matrícula: %s \n", alunos[i].matricula);
        printf("   Nota 1: %.2f \n", alunos[i].notas.nota1);
        printf("   Nota 2: %.2f \n", alunos[i].notas.nota2);
        printf("   Nota 3: %.2f \n", alunos[i].notas.nota3);
        printf("    Média: %.2f \n", alunos[i].notas.media);
        printf("--------------------------------------------- \n");
    }

    return 0;
}

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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 comunidades 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

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!