Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Deseja-se publicar o número de acertos de cada aluno em uma prova em forma de testes. A prova consta de 6 questões, cada uma com cinco alternativas identificadas por A, B, C, D e E. Para isso são dados:
· o cartão gabarito;
· o número de alunos da turma;
· o cartão de respostas para cada aluno, contendo o seu número e suas respostas.
Fiz esse código em resposta a questão, mas o resultado não é o certo
#include <iostream>
#include <conio.h>
using namespace std;
int respostasCorretas (char gabarito[], char resposta[], int numeroQuestoes)
{
int nCorretas=0; //NUMERO DE RESPOSTAS CORRETAS
for (int cont=0; cont<numeroQuestoes; cont++)
{
if(gabarito[cont]==resposta[cont])//COMPARACAO ENTRE RESPOSTA E GABARITO. CADA QUESTÃO EQUILAVE A UM INDICE DO VETOR
{
nCorretas++;
}
}
return nCorretas;
}
main()
{
int nQuestao=0; // ESSA VARIAVEL SERA INFORMADA PELO USUARIO E EQUIVALERA AO TAMANHO DOS VETOREES
char gabarito[nQuestao], resposta[nQuestao]; //USAREMOS O TIPO CHAR POIS PREENCHEREMOS O VETOR, COM AS OPCOES A, B, C,D, E
int nAlunos = 0;
cout<<"Digite o numero de questoes do teste:\n";
cin>>nQuestao;
cout<<"Digite o numero de alunos :\n";
cin>>nAlunos;
for(int contador=0; contador<nQuestao; contador++) // LOOP QUE PREENCHERA O GABARITO
{
cout<<"Digite o gabarito da questao "<<contador+1<<"\n";
cin>>gabarito[contador];
}
for(int cont=0; cont<nAlunos; cont++) //LOOP CORRESPONDENTE A CADA ALUNO
{
for(int contador=0; contador<nQuestao; contador++) // LOOP QUE PREENCHERA O CARTAO RESPOSTAS
{
cout<<"Digite a resposta do aluno da questao "<<contador+1<<"\n";
cin>>resposta[contador];
}
cout<<"Respostas corretas desse aluno:\n "<<respostasCorretas(gabarito,resposta, nQuestao)<<"\n\n";
}
}Carregando comentários...