Pular para o conteúdo
consulta rápida

Guia rápido

Como rodar seu código fora do site, os erros que mais derrubam e o formato que o professor cobra na prova.

Como rodar seu C

No Sublime (ou outro editor), crie um arquivo novo e salve com a extensão .c, por exemplo teste.c. Sem o .c o compilador não reconhece o arquivo.

Abra o terminal na pasta do arquivo e compile e rode:

gcc teste.c -o teste
./teste

No Windows (PowerShell ou CMD), roda com .\teste.exe. Se o compilador não mostrar nada, deu certo: em C, silêncio é bom sinal.

Como ler uma mensagem de erro: teste.c:5:7: error quer dizer arquivo teste.c, linha 5, coluna 7. Segmentation fault: o programa tentou acessar memória que não podia — quase sempre é recursão sem fim ou acesso fora do vetor.

Como o professor cobra

  • Código completo do zero em C, com main, scanf e printf.
  • Saída exata do jeito do enunciado, sem "Digite...".
  • Contador de comparações, de trocas ou de chamadas recursivas.
  • Rastro: printf mostrando o vetor a cada passo.
  • Variação do que foi dado em aula: ordem decrescente, regra de desempate, dividir em três partes.
  • Árvore de chamadas da recursão desenhada no papel.
  • Simulação na mão de uma ou duas iterações do quick sort, escrevendo qual pivô escolheu (primeiro ou último).
  • Dado um vetor, como ele fica depois de cada passada (1ª, 2ª...) em bubble, selection e insertion.

Erros que derrubam

Erros comuns e como corrigir
ErroCerto
#include <stdio>#include <stdio.h>
#include sem nada (o <stdio.h> some ao colar no Moodle)conferir a linha 1 depois de colar
scanf("%d", x)scanf("%d", &x)
scanf lendo na variável erradao nome dentro do scanf é da variável que você quer preencher
if (a = b)if (a == b)
while (i > n) pra percorrerwhile (i < n)
/n\n
printf("%d", v[i]) sem espaçoprintf("%d ", v[i]) ou espaço antes do número
esquecer o ; no fim da linhatodo comando termina com ;
prinf, interala, retunr (nome digitado errado)conferir o nome exato
chamar intercala com 3 argumentosela pede 4: v, ini, meio, fim
chave { sobrando ou faltandocada { tem uma }
esquecer o i = i + 1 dentro do whileo loop nunca termina
esquecer de zerar o i = 0 antes do segundo whileele começa de onde o primeiro parou
escrever o tipo na chamada: return 1 + int funcao(x)o tipo só aparece ao criar a função: return 1 + funcao(x)
if (...); com ponto e vírgula coladoo ; termina o if vazio; tira ele
mandar main no Moodle quando o exercício tem tabela Test / Resultmandar só a função, o corretor coloca o main
Segmentation faultrecursão sem fim ou acesso fora do vetor