oi pessoal, eu estou com uma duvida simples, mas não estou conseguindo fazer, eu não estou acertando no cont (no final do programa. ele aparece um numero esquisito.
/* crie um programa que forneça as sequintes informações:
a) as 6 disciplinas quecom o maior numero de alunos:
b) a quantidade de disciplinas que possuem menos do que 10 alunos:
para tanto, o seu programa deve:
I-armazenar o codigos das disciplinas e um contador de lotação para cada
disciplina, sendo dois vetores:
*/
#define TAM 10
#include<stdio.h>
int main (void)
{
int disc[TAM], vagas[TAM], aux , auxd, i=0, cont=0, cod, j;
fflush(stdin);
for (i=0; i<TAM; i++)
{
disc[i]=i+100;
vagas[i]=0;
}
do{
printf("informe qual disciplina voce vai cursar: ");
scanf("%d",&cod);
if (cod != 9999)
{
i = 0;
int achou = 1;
int fim = 1;
while ((achou == 1) && (fim == 1))
{
for (i=0; i<TAM; i++){
if (cod == disc[i]){
vagas[i]=vagas[i]+1;
achou=0;
}
else
fim=0;
}
}
if(achou==0)
printf(" matricula confirmada :\n");
else
printf("codigo incorreto, tente novamente:\n");
}
}while (cod != 9999);
for (i=0; i<TAM; i++){
for (j=i+1; j<TAM; j++){
if(vagas[i]<vagas[j])
{
aux=vagas[i];
vagas[i]=vagas[j];
vagas[j]=aux;
auxd=disc[i];
disc[i]=disc[j];
disc[j]=auxd;
}
if(vagas[i]<10)
cont++;
}
}
for (i=0; i<TAM; i++){
if(vagas[i]<10)
cont++;
}
printf("\n\n As 6 mais disciplinas com o maior numero de aluno \n");
for (i=0; i<6; i++)
{
printf("A disciplina %d possui %d alunos\n",disc[i],vagas[i]);
}
printf("%d materias possuem menos de 10 alunos\n",cont);
printf("\n");
system("pause");
return 0;
}