Olá, meu nome é Túlio e tenho 18 anos. Recentemente meu professor de estrutura de dados passou o seguinte exercício: Fazer um programa em C para corrigir provas de múltipla escolha. Postarei o código e explicarei melhor qual o problema:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define questoes 5
#define alunos 4
main()
{
char vet_gab[questoes];
char vet_resp[questoes];
int vet_matricula[alunos];
int vet_notas[alunos];
int a,i,j,k,total=0;
//Obtendo o gabarito da prova
for(i=0;i<questoes;i++)
{
printf("Digite o gabarito da questao %d: ",i+1);
scanf("%c",&vet_gab[i]);
fflush(stdin);
}
//Imprimindo o gabarito da prova
printf("\nGabarito da prova:\n");
for(i=0;i<questoes;i++)
{
printf("\nQuestao %d = %c ",i+1,vet_gab[i]);
}
//Obtendo as respostas do aluno
printf("\n\nColetando a Matricula e respostas dos alunos:\n\n");
for(i=0;i<alunos;i++)
{
printf("Matricula do aluno %d: ",i+1);
scanf("%d",&vet_matricula[i]);
fflush(stdin);
for(j=0;j<questoes;j++)
{
printf("Digite a resposta da questao %d:",j+1);
scanf("%c",&vet_resp[j]);
fflush(stdin);
for(k=0;k<questoes;k++)
{
if(vet_resp[k] == vet_gab[k])
{
total++;
vet_notas[k]=total;
}
}
}
}
printf("\nMostrando numero da matricula e a respectiva nota do aluno:\n");
for(i=0;i<alunos;i++)
{
printf("\nMatricula: %1d Nota: %d",vet_matricula[i],vet_notas[i]);
}
getch();
}
Execução do código:
O programa deve calcular e mostrar a nota juntamente com a matricula do aluno.
( A prova tem 5 questões, cada questão vale 1 ponto )
Como usei 3 For's encadeados, tomei o cuidado de mudar as variáveis dos mesmos, neste caso,as variáveis i,j e k. Porém, tanto o armazenamento da matricula quanto o da nota não estão funcionando bem. Para calcular a nota, usei um IF que compara o vetor das respostas com o vetor gabarito e quando for igual, a variável 'total' é incrementada. Após o calculo da nota, ela deverá ser armazenada em um vetor somente para as notas, para isso fiz que: vet_notas[] = total, não tenho certeza se está certo.
Então é isso pessoal, espero que alguém possa me ajudar neste problema.
Pergunta
TulioTC
Olá, meu nome é Túlio e tenho 18 anos. Recentemente meu professor de estrutura de dados passou o seguinte exercício: Fazer um programa em C para corrigir provas de múltipla escolha. Postarei o código e explicarei melhor qual o problema:
Execução do código:
O programa deve calcular e mostrar a nota juntamente com a matricula do aluno.
( A prova tem 5 questões, cada questão vale 1 ponto )
Como usei 3 For's encadeados, tomei o cuidado de mudar as variáveis dos mesmos, neste caso,as variáveis i,j e k. Porém, tanto o armazenamento da matricula quanto o da nota não estão funcionando bem. Para calcular a nota, usei um IF que compara o vetor das respostas com o vetor gabarito e quando for igual, a variável 'total' é incrementada. Após o calculo da nota, ela deverá ser armazenada em um vetor somente para as notas, para isso fiz que: vet_notas[] = total, não tenho certeza se está certo.
Então é isso pessoal, espero que alguém possa me ajudar neste problema.
Desde já, grato!
Editado por TulioTCLink para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.