barutaji
-
Posts
113 -
Cadastrado em
-
Última visita
Tipo de conteúdo
Artigos
Selos
Fabricantes
Livros
Cursos
Análises
Fórum
posts postados por barutaji
-
-
Passando o olho achei dois erros, um de gramática e um de lógica:
1) getche(0);
2)
for(i=1;i<=12;i++)
{
scanf("%d",&vet[i]);
}Em C a matriz começa em vet[0] e termina em vet[limite-1]. Então o laço tem que ser:
for(i=0;i<12;i++)
{
scanf("%d",&vet[i]);
}Sempre use a tag CODE para colocar o código, senão fica difícil de entender.
- 2
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
Estrut. de dados - Exercício
em C/C#/C++
Postado
Você pode começar pelo segundo elemento, mas o final do laço tem que ser:
x<=11
ou
x<12
Senão você vai estar acessando uma região da memória que não pertence à matriz, logo é uma invasão de memória. Por isso que é um erro de lógica.
Se você quiser ter 12 números tem que criar uma matriz de 13 elementos(primeiro nulo), aí sim pode colocar x<=12.
Pelo que você indicou acerca do erro, tudo indica que o erro é esse: invasão de memória, um erro fatal.