-
Notifications
You must be signed in to change notification settings - Fork 0
/
Matriz 15
89 lines (73 loc) · 2.81 KB
/
Matriz 15
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define QUANTIDADE_GABARITO_RESPOSTAS 5
#define QUANTIDADE_GABARITO_ALUNOS 5
#define QUANTIDADE_ALUNOS 10
#define QUANTIDADE_LETRAS_GABARITO 4
void
barraInformacoes(char *str, char caractere, int tamanho)
{
const int quantidade_caracteres = (tamanho-(strlen(str)-1))/2;
int contador;
for (contador = 0; contador < quantidade_caracteres; contador++) {
printf("%c", caractere);
}
printf("%s", str);
for (contador = 0; contador < quantidade_caracteres; contador++) {
printf("%c", caractere);
}
printf("\n");
}
int main(void)
{
char
gabarito_respostas[QUANTIDADE_GABARITO_RESPOSTAS],
gabaritos_alunos[QUANTIDADE_ALUNOS][QUANTIDADE_GABARITO_ALUNOS];
int
contador1,
contador2,
quantidade_acetos_aluno[QUANTIDADE_ALUNOS] = {0};
barraInformacoes("GABARITO", '-', 40);
printf("Digite as respostas das questoes como A,B,C ou D\n");
for (contador1 = 0; contador1 < QUANTIDADE_GABARITO_RESPOSTAS; contador1++) {
printf("Digite a resposta da prova [%i]:", contador1+1);
scanf("%c%*c", &gabarito_respostas[contador1]);
}
barraInformacoes("RESPOSTAS DO GABARITO", '-', 40);
printf("[-]");
for (contador1 = 0; contador1 < QUANTIDADE_LETRAS_GABARITO; contador1++) {
printf("[%c]", contador1+'A');
}
printf("\n");
for (contador1 = 0; contador1 < QUANTIDADE_GABARITO_RESPOSTAS; contador1++) {
printf("[%i]", contador1+1);
for (contador2 = 0; contador2 < QUANTIDADE_LETRAS_GABARITO; contador2++) {
if (toupper(gabarito_respostas[contador1]) == contador2+'A') {
printf("[#]");
} else {
printf("[ ]");
}
}
printf("\n");
}
barraInformacoes("GABARITO DO ALUNO", '#', 40);
for (contador1 = 0; contador1 < QUANTIDADE_ALUNOS; contador1++) {
printf("Digite as respostas do aluno:[%i]\n", contador1+1);
for (contador2 = 0; contador2 < QUANTIDADE_GABARITO_ALUNOS; contador2++) {
printf("Prova[%i]\n", contador2+1);
printf("A, B, C ou D por favor\n:");
scanf("%c%*c", &gabaritos_alunos[contador1][contador2]);
if (toupper(gabaritos_alunos[contador1][contador2]) == toupper(gabarito_respostas[contador2])) {
quantidade_acetos_aluno[contador1]++;
}
}
}
barraInformacoes("ACERTOS DE CADA ALUNO", '-', 40);
for (contador1 = 0; contador1 < QUANTIDADE_ALUNOS; contador1++) {
printf("O aluno %i acertou %i questoes\n", contador1+1, quantidade_acetos_aluno[contador1]);
}
printf("Pressione enter para encerrar o programa\n");
getchar();
return(0);
}