Curso Online de C Progressivo

Curso Online de C Progressivo

C é, sem dúvidas, uma das linguagens mais importantes e mais usadas no mundo, há décadas. Sistemas operacionais, jogos de alto rendiment...

Continue lendo

Autor(a):

Carga horária: 66 horas

De: R$ 80,00 Por: R$ 49,90
(Pagamento único)

Certificado digital Com certificado digital incluído

C é, sem dúvidas, uma das linguagens mais importantes e mais usadas no mundo, há décadas.

Sistemas operacionais, jogos de alto rendimento, aplicações acadêmicas, código para hardware (como sistemas embarcados) e muito mais, é feito usando C.

Tudo isso se deve a duas características: por ser simples (precisa aprender poucos comandos) e ser EXTREMAMENTE poderosa.

Com C, você tem acesso as entranhas do seu computador, aos bits do sistema, tem poder e comando direto ao processamento e memória da máquina. Não é à toa que é a linguagem favorita dos Hackers.

No Curso C Progressivo vamos te pegar desde o básico, sem precisar ter pré-requisito algum, em linguagem nenhuma, e vamos te levar ao nível profissional, te mostrando tudo que a linguagem C pode fazer.

São explicações simples, detalhadas, com muito exemplo, código pronto, questões comentadas, exercícios, criação de programas úteis e games.

Nada de slides com letras gigantes e frases mega resumidas e abstratas.

São mais de 660 páginas de puro conteúdo, que vai te servir como referência para consulta pro resto de sua vida.

É mais conteúdo que qualquer livro (que custam centenas de reais) ou curso presencial (que custam milhares de reais).

Se não gostar, é só avisar, que estornamos seu dinheiro sem fazer nenhuma pergunta.

Ensinamos programação na internet há mais de 10 anos. Meu método de ensino é voltado para quem é totalmente iniciante, ensino como gostaria de ter sido ensinado: - Passo a passo - Sem pressa - Sem frases resumidas - Muita explicação - Muitos exemplos - Muitos códigos comentados - Exemplos de programas/sistemas reais Ofereço material que é maior e mais completo que livros (que custam centenas de reais) e cursos presenciais (que custam milhares de reais). Se não gostar do meu material e método de ensino, é só pedir seu dinheiro de volta que estorno na hora, sem questionamento.



  • Aqui você não precisa esperar o prazo de compensação do pagamento para começar a aprender. Inicie agora mesmo e pague depois.
  • O curso é todo feito pela Internet. Assim você pode acessar de qualquer lugar, 24 horas por dia, 7 dias por semana.
  • Se não gostar do curso você tem 7 dias para solicitar (através da pagina de contato) o cancelamento ou a devolução do valor investido.*
  • Adquira certificado ou apostila impressos e receba em casa. Os certificados são impressos em papel de gramatura diferente e com marca d'água.**
* Desde que tenha acessado a no máximo 50% do material.
** Material opcional, vendido separadamente.

Modelo de certificados (imagem ilustrativa):

Frente do certificado Frente
Verso do certificado Verso
  • Curso C Progressivo

    COMPLETO
    www.cprogressivo.net

  • Sumário
    Para os iniciantes ou que querem aprender bem mesmo, que siga os seguintes tutoriais na ordem que é colocada.
    Para ler um tutorial avulso, a gente assume que você tenha lido ou tenha os conhecimentos de todos os artigos anteriores. Estude no seu próprio tempo, sem pressa, com calma, leia e releia quantas vezes forem necessárias.

    Bons estudos!

    ** Como ser o melhor programador C

    Tutorial de Conceitos Básicos da Linguagem C
    O necessário para programar em C - Instalação do Code::Blocks
    Criando e compilando seu primeiro programa na Linguagem C Código comentado do nosso primeiro programa em C
    A função printf() e os caracteres especiais
    Como comentar seus códigos em C - Comentários e Delimitadores
    Números inteiros - o tipo int
    Modificadores do tipo inteiro (int) - short, long, signed e unsigned
    Números decimais (ou reais) em C - os tipos float e double
    Escrevendo em C - o tipo char
    Recebendo números do usuário - A função scanf
    Recebendo letras do usuário - As funções scanf, getchar, fgetc e getc
    Buffer: o que é, como limpar e as funções fflush e fpurge
    Operações matemáticas - Soma, subtração, multiplicação, divisão e módulo (ou resto da divisão) e precedência dos operadores
    Os atalhos dos símbolos matemáticos: +=, -= , *=, /= e %=

  • Sistema Binário e Valores lógicos 'true' ou 'false'
    Operadores Lógicos E (&&), OU (||) e de Negação (!)
    Exercícios: Questões sobre os conhecimentos básicos da linguagem C

    Teste Condicional e Controle de Fluxo
    O teste condicional IF ELSE
    Fazendo testes e comparações - operador de igualdade (==), maior (>), menor (=), menor igual (<=), de diferença (!=) e de módulo, ou resto da divisão (%)
    Questões sobre IF ELSE
    Operadores de Incremento (++), Decremento (--) - Diferença entre a=b++ e a=++b
    O laço WHILE: o que é, para que serve e como usar
    Questões sobre o laço WHILE
    Soluções das questões sobre o laço WHILE
    6. O laço FOR: o que é, para que serve e como usar o FOR - Cast
    Questões sobre o laço FOR
    Soluções das questões sobre o laço FOR
    Os comandos CONTINUE e BREAK em C: pausando e alterando o fluxo de laços
    O teste condicional SWITCH: o que é, para que serve e como usar o switch
    O laço DO WHILE: o que é, para que serve e como usar o do while
    Programa em C: Criando uma calculadora usando DO WHILE e SWITCH
    Exercícios envolvendo testes e laços
    Solução dos exercícios sobre testes e laços

  • Funções em C
    1. O que são funções, para que servem e como usá-las
    Programa em C: Criando um chat com menu através de funções
    Argumentos e Parâmetros de funções - Funções aninhadas
    O comando return : devolvendo informações para quem invocou as funções
    Variáveis locais - Protótipo de uma função
    Gerando números aleatórios em C: rand, srand e seed
    Jogo em C: Adivinhe o número que o computador sorteou através das dicas!
    Funções recursivas: pra aprender recursividade, tem que saber recursividade
    Exercícios sobre funções
    Exercícios resolvidos sobre funções

    Estrutura de dados I: Vetores/Arrays
    O que são vetores, como declarar e quando usar
    Inicializando vetores - Vetores de caracteres e Lixo
    Não use números, use constantes: const e #define
    Matrizes em C: Vetores multidimensionais (Vetor de vetores)
    Como passar vetores e Matrizes para funções
    Passagem por Referência - Como copiar Vetores e Matrizes
    Exercícios sobre Vetores e Matrizes
    Jogo: Como fazer o Jogo da Velha

  • Ponteiros (apontadores)
    Introdução ao uso dos ponteiros: Endereços de memória
    A função sizeof() e os blocos vizinhos de memória
    Como declarar, inicializar e usar ponteiros - A constante NULL
    Variáveis apontadas - A Passagem por Referência
    Operações matemáticas com Ponteiros

    Strings e Caracteres - Escrevendo em C
    Introdução ao uso das strings: O que são, como declarar, inicializar e o caractere 0
    Lendo e Escrevendo Strings
    Como criar uma biblioteca (ou header .h) em C
    A biblioteca string.h e suas funções
    4.1 Exercício: Implemente as funções da biblioteca string.h
    5. Exercícios sobre Strings

    Estrutura de dados II: structs
    Introdução as structs: O que são, para que servem e onde são usadas
    Como declarar uma struct
    Como acessar, ler e escrever em elementos de uma struct
    typedef: Como criar seus próprios tipos
    Como enviar structs para funções
    Como passar uma struct para funções por referência - O operador ->
    6.1 Exercícios sobre structs em C

  • Alocação Dinâmica de Memória
    Introdução: o que é alocar memória dinamicamente e para quê isso serve
    A função malloc(): como alocar memória em C
    A função free(): Como liberar memória em C e evitar vazamento (Memory Leak)
    A função realloc(): Realocando memória e a função calloc()

    Estrutura de dados III: Estruturas Dinâmicas
    Estrutura dinâmica de dados em C: O que são Listas, Filas, Pilhas e Árvores
    Listas (List): O que é e como funciona
    Inserindo nós no início e final da lista
    Retirando nós do início e final da lista
    Implementação completa de uma lista - Inserindo e retirando de qualquer local
    Pilhas em C - Como Programar
    Filas em C - Como Programar

    Arquivos (FILES) em C
    Introdução: o que são, como funciona e para que servem os arquivos (files)
    Abrindo arquivos (fopen), modos de abertura (read r, write r, append a) e fechamento (EOF, fclose e fcloseall)
    Escrevendo em arquivos: As funções fputc, fprintf e fputs
    Como ler arquivos em C: As funções fgetc, fscanf e fgets

  • Como ser o melhor programador C Possível

    A partir do próximo tutorial, você vai mergulhar profundamento no apaixonante mundo da programação. É sem volta, mesmo que use profissionalmente ou não. Na pior das hipóteses, vai apenas te deixar mais inteligente, com melhor criatividade e raciocínio mais rápido.

    Como estudar programação
    Infelizmente, não é só ler ou ver um vídeo, como muitos assuntos por aí. Programação faz parte da Computação, que faz parte da Matemática. Ou seja, programar é um exercício de lógica puro.

    Mas não se assuste, sei que programação tem aquela áurea de ‘ohh, nossa que fodástico, só gênio pra fazer isso’,
    mas isso é totalmente falso, é possível qualquer pessoa aprender TRANQUILAMENTE, a programar.

    Mas vou ser honesto com você: precisa de muito esforço, muita dedicação, e ser uma pessoa insistente.
    Dá vontade de desistir, eu mesmo já larguei por diversas semanas, várias vezes, em vários assuntos e várias linguagens.

    Leia nossa apostila, pesquise por tutoriais, veja vídeo-aulas...não entende? Estude de novo, leia de novo, pense de novo...as vezes, nem assim vai. Depois você volta no tópico, é assim mesmo, devagar, sem pressa.

    É de extrema importância você escrever o código e ver ele rodar na sua frente, diante de seus olhos. Quer apenas ou apenas ver vídeo-aulas? Vai perder seu tempo. Não existe absolutamente nenhum programador que só leu ou assistiu aulas.

    Você só aprende, única e exclusivamente, se você digitar os códigos, entender eles. O código tem que rodar na sua cabeça antes, fazer sentido para você, só então depois que você vai começar a digitar e ver ele funcionando.

  • E mesmo assim, vai errar MUITO, mas MUUUUUUU.UUUUITO MESMO.
    Eu errei. Você vai errar, todo mundo erra muito.
    A gente fica louco, caçando os erros, quebrando a cabeça, pesquisando e chorando em posição fetal por causa dos erros. E as vezes é porque esquecemos um ponto-e-vírgula, apenas.

    Outra coisa extremamente comum que vai acontecer com você: escrever códigos longos, confusos e cheio de ‘remendos’. É assim mesmo que funciona. Aí você vai ver o código aqui da apostila, está feito em 20 linhas o que você fez em 200 linhas.

    PARABÉNS pelas 200 linhas! É com essa força de vontade e perseverança que você vai se tornar um programador EXCELENTE. Da próxima vez que for refazer esse código de 200 linhas, já vai facilmente fazer em 150...depois 100...e logo logo tá fazendo um código melhor que a gente.

    É ASSIM MESMO QUE FUNCIONA, ok ?
    Não desanime, vai ser complicado mesmo.

  • O que estudar ?
    Essa é outra dúvida que me assombrava...Java, C, C++, Python, Redes, Sistemas Operacionais, Administração de Redes, Banco de dados...ahhh, eu ficava louco e queria aprender tudo, e acabava aprendendo nada direito.

    Pessoal, é sem pressa. NUNCA ESTUDE COM PRESSA.
    A resposta sobre por onde começar é: essa apostila. Ela já assume que você é totalmente leigo de tudo, só sabe ligar o computador, abrir essa apostila e pronto. Ensinamos até onde você vai clicar e digitar, para começar a programar.

    Mas esse é só o início da jornada, ok?
    Você deve estudar outras linguagens, outros paradigmas.

    Por exemplo, com Python, você tem uma linguagem de script, pra escrever pouco e fazer muita coisa simples, é ótimo pra otimizar suas tarefas no trabalho e até suas coisas pessoais.

    Hoje o mundo gira em torno dos apps. Com Java, você vai ser apto a criar aplicativos Android e softwares que rodam
    em várias plataformas (Windows, Linux).

    C e C++ são usados para criar programas extremamente eficientes, rápidos e confiáveis, você tem um poder absurdo sobre a máquina, e muita responsabilidade em mãos.

    Com o trio HTML (não é linguagem de programação) + JavaScript + PHP você simplesmente pode quebrar a internet. A grande rede é montada em cima dessas linguagens, e sabendo elas, você cria qualquer sistema web.

    Quer realmente entender o que é um bit? O que é 0 e 1? Controlar cada byte de informação da sua máquina, mover eles quase que manualmente de um registro pra outro da sua CPU? Estude Assembly.

    E por ai vai, pessoal. Cada linguagem e tecnologia nova que você aprender, você fica mais inteligente, mais criativo e com uma linha de raciocínio beeem melhor, se tornando um programador cada vez mais completo. Não se limite.

  • Qual a melhor linguagem de programação?
    “Ah, com Java eu crio apps pro Android facilmente”
    Então Java é melhor? Cria então um sistema operacional em Java...totalmente inviável, Java é um pouco mais
    ‘pesado’.

    “Ah, Linux foi feito em C e Windows foi feito em C++, logo são as melhores linguagens.” Ok bonitão, então vai lá e tenta criar um aplicativo pra Android com essas linguagens, vai demorar 10 anos pra fazer o que o Java faria em 1 mês.

    “Por isso prefiro Python, super leve, escreve poucas linhas e é extremamente versátil”. É fácil fazer muita coisa em Python, né? Então faz um ‘hello, world’...mas na tela da BIOS, ou seja, naquela telinha preta que aparece quando você inicia seu computador. Ali só vai com C ou Assembly.

    “Então, obviamente Assembly é a mais foda de todas, pois é possível fazer tudo com ela”. Sim, teoricamente é possível fazer tudo com ela, então tenta criar uma rede social com ela. Mas vai precisar contratar mil programadores pra terminar dentro de uma década.

    Porém, com PHP e Banco de Dados, por exemplo, numa tarde você pode criar uma baita rede social e deixar ela bem interessante usando bastante JavaScript.

    O que quero dizer com isso?
    Que não existe melhor linguagem de programação. Existem linguagens mais adequadas para cada tipo de problema. Repita as duas frases anteriores. Se possível, imprima e cole na parede atrás do seu computador.

    Pessoal, isso inclusive é muito perguntado em entrevistas de emprego. Se vier com esse papinho de “Java é a melhor”, “Python rules”, “PHP é a mais usada”, provavelmente não vão te contratar.

    A coisa mais normal do mundo é uma empresa mudar de seus sistemas de linguagens e de tecnologias. É aí que
    entramos no próximo tópico

  • A coisa mais importante para se aprender é
    ...aprender.

    A melhor característica de um programador é saber aprender. Aprenda a aprender.
    Não importa seu nível, quantas lingaugens saiba, quantos anos de experiência tem...você sempre vai precisar fazer uma pesquisa no Google para relembrar algum detalhe.

    Essa característica, no programador, de saber buscar informações e aprender rápido, é sem dúvidas a mais importante.

    Você precisa ser flexível, estar preparado para estudar outra linguagem, usar outra tecnologia...não se limite, não seja fanático por linguagem, tecnologia ou sistema, seja aberto para as novidades.

    Continue sempre pesquisando, seja curioso, teste as coisas, duvide dos códigos, tente fazer melhor, pense numa solução melhor enquanto estiver tomando banho ou antes de dormir.


Matricule-se agora mesmo Preenchendo os campos abaixo
R$ 49,90
Pagamento único
Processando... Processando...aguarde...

Desejo receber novidades e promoções no meu e-mail:


  • - Conceitos Básicos de C
  • O que precisa baixar e instalar
  • Como criar e compilar seu primeiro programa
  • Como escrever mensagens na tela com a função prinft
  • Como comentar códigos
  • Variáveis (int, float, double e char)
  • Como receber dados do usuário
  • Buffer
  • Operações matemáticas
  • Precedência de operadores
  • Operadores lógicos
  • - Testes condicionais
  • Fazendo comparações em C
  • IF
  • ELSE
  • IF e ELSE
  • SWITCH
  • - Laços e Loopings
  • Laço WHILE
  • Laço FOR
  • Comandos CONTINUE e BREAK
  • Laço DO WHILE
  • - Funções
  • O que são e para que servem funções
  • Como declarar uma função
  • Como usar e invocar uma função
  • Argumentos
  • Parâmetros
  • Comando return
  • Variáveis locais
  • Função recursiva
  • - Vetores (arrays)
  • Vetores: o que são, para que servem
  • Como declarar e inicializar
  • Constantes com const e #define
  • Matrizes: Vetor de vetores
  • Matrizes e funções
  • Passagem por referência
  • - Ponteiros
  • O que são e para que servem os ponteiros
  • Endereços de memória
  • Como declarar, inicializar e usar ponteiros
  • Constante NULL
  • Função sizeof()
  • Operações matemáticas com ponteiros
  • - Strings e Caracteres
  • O que são strings
  • Como declarar, inicializar e usar strings
  • Caractere delimitador \0
  • Lendo e escrevendo strings
  • Como criar uma biblioteca
  • Funções da biblioteca string.h
  • - Structs
  • O que são, para que servem e como usar
  • Como declarar uma struct
  • Como acessar, ler e escrever elementos de uma struct
  • typedef
  • Structs e funções
  • Enviando structs como referência
  • Operador ->
  • - Alocação dinâmica de memória
  • O que é alocar dinamicamente e por que fazer ?
  • Função malloc()
  • Função free()
  • Função calloc()
  • Função realloc()
  • - Estruturas dinâmicas de dados
  • O que são, quais existem e para que serve cada uma
  • Listas (inserindo e retirando nós - implementação completa)
  • Pilhas
  • Filas
  • - Arquivos
  • Por que usar arquivos?
  • Abrindo arquivos
  • Modos de abertura e fechamento
  • Escrevendo em arquivos
  • Funções fputc, fprintf e fputs
  • Como ler arquivos
  • Funções fgetc, fscanf e fgets
  • - Tutoriais, Programas e Jogos
  • Criando um menu de opções
  • Gerando números aleatórios em C
  • Como criar uma calculadora em C
  • Achar raízes de equação do segundo grau
  • Jogo do adivinhe o número
  • Jogo da Velha
  • Batalha Nav