PDF download Baixe em PDF PDF download Baixe em PDF

A C é uma das mais antigas linguagens de programação. Ela foi desenvolvida nos anos 70, mas ainda é muito poderosa devido ao seu baixo nível. Aprender a programar em C é uma ótima forma de introdução à linguagens mais complexas, e o conhecimento que você vai ganhar é útil para quase todas as linguagens de programação. Para aprender a começar a programar em C, veja o passo 1 abaixo.

Parte 1
Parte 1 de 6:

Preparando-se

PDF download Baixe em PDF
  1. Um código em C precisa ser compilado por um programa que traduz os códigos em sinais que a máquina possa entender. Os compiladores geralmente são gratuitos e existem diferentes versões deles para cada sistema operacional.
    • Para o Windows, teste o Microsoft Visual Studio Express ou o MinGW.
    • Para Mac, o XCode é um dos melhores compiladores de C.
    • Para o Linux, o GNU é uma das opções mais utilizadas.
  2. A C é uma das linguagens de programação mais antigas, mas pode ser muito poderosa. Ela foi projetada para sistemas operacionais baseados em Unix, mas foi portada e expandida para quase todos os sistemas. A versão moderna do C é o C++.
    • O C é essencialmente composto de funções, que podem usar variáveis, condicionais e laços para salvar e manipular dados.
  3. Veja um programa bem simples abaixo para ter uma boa ideia sobre como vários aspectos da linguagem funcionam juntos e entender o funcionamento de softwares.
     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     printf 
     ( 
     "Hello, World! 
     \n 
     " 
     ); 
     getchar 
     (); 
     return 
     0 
     ; 
     } 
    
    [1]
    • O comando #include vem antes do início do programa. Ele carrega as bibliotecas que contêm as funções das quais você vai precisar. Nesse exemplo, a stdio.h nos permite usar as funções printf() e getchar() .
    • O comando int main() diz ao compilador que o programa tem uma função chamada "main" e que ela vai retornar um inteiro ao terminar. Todos os programas em C precisam de uma função "main".
    • O { } indica que tudo dentro deles é parte da função. Nesse caso, eles denotam que dentro deles está a função "main"
    • A função printf() mostra o conteúdo dos parênteses na tela do usuário. As aspas garantem que a string será mostrada exatamente como está. O \n diz ao compilador para pular uma linha.
    • O ; denota o fim de uma linha. A maioria das linhas em C termina com um ponto e vírgula.
    • O comando getchar() diz ao compilador para esperar que o usuário pressione um botão antes de continuar. Isso é muito útil pois muitos compiladores vão executar o programa e então fechar a janela imediatamente. Esse comando evita que a janela feche até que um botão seja pressionado.
    • O comando return 0 indica o fim de uma função. Perceba que a função "main" é do tipo int . Isso significa que ela vai precisar de um inteiro para retornar quando o programa acabar. Um "0" indica que o programa terminou sem erros; qualquer outro número representa problemas.
  4. Coloque o código em um editor e salve-o como um arquivo "*.c". Compile-o no seu computador, geralmente clicando no botão "Build" ou "Run".
  5. Os comentários são uma parte do código que não é compilada, mas permite que você explique o que está ocorrendo. Isso é útil para lembrar a você e a outros desenvolvedores da função daquela parte do código.
    • Para comentar em C, digite /* no início do comentário e */ no final.
    • Comente em todas as partes do código, exceto as básicas.
    • Os comentários podem ser usados para remover rapidamente uma parte do código sem deletá-la. Simplesmente coloque o código entre os símbolos de /* e */ e compile. Caso queira o código de volta, basta remover os símbolos.
    Publicidade
Parte 2
Parte 2 de 6:

Usando variáveis

PDF download Baixe em PDF
  1. Elas permitem que você guarde dados, seja de cálculos do programa ou dados digitados pelo usuário. Elas precisam ser definidas antes de serem usadas e existem vários tipos delas.
    • Alguns dos mais comuns são int , char e float . Cada uma guarda um tipo de dado diferente.
  2. As variáveis precisam ser estabelecidas, ou "declaradas", antes de serem usadas pelo programa. Você as declara digitando o tipo de dado seguido pelo nome da variável. Seguem alguns exemplos possíveis de declaração:
     float 
     x 
     ; 
     char 
     nome 
     ; 
     int 
     a 
     , 
     b 
     , 
     c 
     , 
     d 
     ; 
    
    • Perceba que é possível declarar várias variáveis na mesma linha, desde que elas sejam do mesmo tipo. Simplesmente separe-as com vírgulas.
    • Como várias outras linhas do C, cada declaração precisa terminar com um ponto e vírgula.
  3. Elas precisam ser declaradas no começo de cada bloco de código (um bloco de código é fechado por colchetes). Se você tentar declarar uma variável mais tarde dentro do bloco, o programa não vai funcionar corretamente.
  4. Agora que já sabe o básico sobre como elas funcionam, você pode criar um programa simples que vai gravar a entrada do usuário em uma variável. Será necessário usar uma outra função da linguagem, chamada scanf , que lê o que foi digitado pelo usuário.
     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     int 
     x 
     ; 
     printf 
     ( 
     "Digite um número: " 
     ); 
     scanf 
     ( 
     "%d" 
     , 
     & 
     x 
     ); 
     printf 
     ( 
     "Você digitou %d" 
     , 
     x 
     ); 
     getchar 
     (); 
     return 
     0 
     ; 
     } 
    
    • O "%d" string diz ao scanf para procurar por inteiros na entrada do usuário.
    • O & antes da variável x diz ao scanf onde encontrar a variável para que seja possível mudá-la, guardando o inteiro nela.
    • Por último, o comando printf exibe o inteiro lido na tela do usuário.
  5. Você pode usar expressões matemáticas para manipular dados gravados em variáveis. A principal diferença entre operadores matemáticos que deve ser lembrada é que o = atribui um valor à variável enquanto o == compara os valores em ambos os lados para saber se eles são iguais.
     x 
     = 
     3 
     * 
     4 
     ; 
     /* atribuí 3 * 4 (12) ao "x" */ 
     x 
     = 
     x 
     + 
     3 
     ; 
     /* soma 3 ao valor original de "x" e atribuí o novo valor à variável */ 
     x 
     == 
     15 
     ; 
     /* verifica se o "x" é igual a 15 */ 
     x 
     < 
     10 
     ; 
     /* verifica se o valor de "x" é menor que 10 */ 
    
    Publicidade
Parte 3
Parte 3 de 6:

Usando condicionais

PDF download Baixe em PDF
  1. Os condicionais são a base da maioria dos programas. Eles são expressões que retornam um valor TRUE (verdadeiro) ou FALSE (falso). Uma medida é tomada baseando-se no resultado. O condicional mais básico é o if .
    • TRUE e o FALSE funcionam no C diferente do que você deve estar acostumado. Expressões verdadeiras (TRUE) sempre acabam retornando um valor diferente de 0. Ao fazer comparações, se o resultado for verdadeiro, um "1" é retornado. Se ela for falsa, um "0" é retornado. Entender isso vai ajudar você a visualizar como são processados os condicionais IF (se).
  2. Os condicionais geralmente são operadores matemáticos que comparam valores. A lista a seguir contém os operadores mais usados.
     > 
     /* maior que */ 
     < 
     /* menor que */ 
     >= 
     /* maior ou igual */ 
     <= 
     /* menor ou igual */ 
     == 
     /* igual to */ 
     != 
     /* diferente */ 
    


     10 
     > 
     5 
     TRUE 
     6 
     < 
     15 
     TRUE 
     8 
     >= 
     8 
     TRUE 
     4 
     <= 
     8 
     TRUE 
     3 
     == 
     3 
     TRUE 
     4 
     != 
     5 
     TRUE 
    
  3. Você pode usar o IF para determinar o que o programa deve fazer após a expressão ser avaliada. É possível combinar condicionais para criar várias opções, mas comece com uma simples para se acostumar.
     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     if 
     ( 
     3 
     < 
     5 
     ) 
     printf 
     ( 
     "3 é menor que 5" 
     ); 
     getchar 
     (); 
     } 
    
  4. Você pode usá-los após condicionais IF para tratar os diferentes resultados. O ELSE será executado caso o IF seja falso. O ELSE IF permite que você inclua múltiplos IFs em um bloco de código para tratar diversos casos. Veja um exemplo no programa abaixo para ver como eles interagem.
     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     int 
     idade 
     ; 
     printf 
     ( 
     "Por favor digite a sua idade atual: " 
     ); 
     scanf 
     ( 
     "%d" 
     , 
     $ 
     age 
     ); 
     if 
     ( 
     age 
     <= 
     12 
     ) 
     { 
     printf 
     ( 
     "Você é só uma criança! 
     \n 
     " 
     ); 
     } 
     else 
     if 
     ( 
     age 
     < 
     20 
     ) 
     { 
     printf 
     ( 
     "É ótimo ser adolescente! 
     \n 
     " 
     ); 
     } 
     else 
     if 
     ( 
     age 
     < 
     40 
     ) 
     { 
     printf 
     ( 
     "Você ainda é jovem de coração! 
     \n 
     " 
     ); 
     } 
     else 
     { 
     printf 
     ( 
     "Com a idade vem a sabedoria. 
     \n 
     " 
     ); 
     } 
     return 
     0 
     ; 
     } 
    
    [2]
    • Esse programa recebe o valor digitado pelo usuário e verifica-o através dos operadores IF. Caso o número satisfaça a primeira condição, então o primeiro printf é retornado. Senão, o programa vai percorrer todos os ELSE IF até achar um que seja satisfeito. Caso nenhum seja satisfeito, o bloco de código do ELSE, que está no final, será executado.
    Publicidade
Parte 4
Parte 4 de 6:

Aprendendo a usar os laços

PDF download Baixe em PDF
  1. Os laços são a parte mais importante da programação, pois eles permitem que você repita blocos de código até que condições específicas sejam satisfeitas. Isso facilita a tarefa de implementar ações repetidas e evita que você precise escrever uma expressão condicional sempre que desejar que algo aconteça.
    • Existem três diferentes tipos de laços: O FOR (para) o While (enquanto) e o DO ... WHILE (faça ... enquanto).
  2. Esse é o tipo de laço mais comum. Ele continua executando um bloco de código até que as condições especificadas no laço sejam satisfeitas. Eles requerem três condições: a inicialização da variável, a condição a ser satisfeita e a forma como a variável é atualizada. Caso você não precise das três condições, deixe um espaço em branco com um ponto e vírgula, senão o laço vai rodar para sempre.

    [3]

     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     int 
     y 
     ; 
     for 
     ( 
     y 
     = 
     0 
     ; 
     y 
     < 
     15 
     ; 
     y 
     ++ 
     ;){ 
     printf 
     ( 
     "%d 
     \n 
     " 
     , 
     y 
     ); 
     } 
     getchar 
     (); 
     } 
    
    • No programa acima, o y é definido como 0 e o laço continua enquanto a variável y for menor que 15. Cada vez que a variável y é mostrada, é adicionado 1 ao valor de y e o laço é repetido. Quando ela chegar a 15, o laço vai parar.
  3. Esse tipo de laço é mais simples que o FOR. Eles têm apenas uma condição, e o laço é repetido enquanto essa condição for verdadeira. Não é necessário inicializar ou atualizar a variável, mas é possível fazer isso dentro do laço.
     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     int 
     y 
     ; 
     while 
     ( 
     y 
     <= 
     15 
     ){ 
     printf 
     ( 
     "%d 
     \n 
     " 
     , 
     y 
     ); 
     y 
     ++ 
     ; 
     } 
     getchar 
     (); 
     } 
    
    • O comando y++ adiciona 1 à variável y sempre que o laço for executado. Quando o y chegar a 16 (lembre-se, o laço continua enquanto a y for "menor ou igual" a 15) o laço para.
  4. Esse laço é muito útil quando você quer ter certeza de que o bloco de código deve ser executado ao menos uma vez. Nos laços FOR e WHILE a condição é verificada no começo do laço, o que significa que ela pode falhar imediatamente. Os laços Do...WHILE verificam as condições no final do laço, garantindo que o bloco de código é executado ao menos uma vez.
     #include 
     <stdio.h> 
      
     int 
     main 
     () 
     { 
     int 
     y 
     ; 
     y 
     = 
     5 
     ; 
     do 
     { 
     printf 
     ( 
     "Esse laço está rodando! 
     \n 
     " 
     ); 
     } 
     while 
     ( 
     y 
     != 
     5 
     ); 
     getchar 
     (); 
     } 
    
    • Esse laço vai exibir a mensagem mesmo que a condição seja falsa. O valor 5 é atribuído à variável y e o laço WHILE está configurado para executar quando ela não for igual a 5. Assim que ela atingir o 5, a função será encerrada. A mensagem já tinha sido mostrada na tela porque a condição não é verificada antes do final.
    • O laço WHILE em um DO...WHILE deve ser seguido por um ponto e vírgula. Esse é o único caso onde um laço termina com um ponto e vírgula.
    Publicidade
Parte 5
Parte 5 de 6:

Usando funções

PDF download Baixe em PDF
  1. Elas são blocos de código que podem ser chamadas por outras partes do programa. Elas tornam fácil a tarefa de repetir esse bloco e ajudam o programa a ficar mais simples de ler e de ser modificado. As funções incluem todas as técnicas já mostradas aqui, inclusive outras funções.
    • A linha main() no começo de todos os exemplos acima são funções, assim como o getchar()
    • Funções são blocos de códigos essenciais, eficientes e fáceis de ler. Faça um bom uso delas para deixar o seu programa bem fluído.
  2. As funções são criadas de forma mais eficiente quando você faz um esboço do que deseja antes de programar. A sintaxe básica das funções é "tipo_de_retorno nome ( parâmetro1, parâmetro2, etc.);". Essa função soma dois números, por exemplo:
     int 
     add 
     ( 
     int 
     x 
     , 
     int 
     y 
     ); 
    
    • Isso vai criar uma função que recebe dois inteiros, ( x e y ), soma os seus valores e retorna o resultado.
  3. Você pode usar o esboço para criar um programa que recebe dois inteiros que o usuário digita, soma seus valores e retorna o resultado. O programa vai definir como essa função, que poderá se chamar adicionar, funcionará e vai utilizá-la para manipular os números digitados.
     #include 
     <stdio.h> 
      
     int 
     add 
     ( 
     int 
     x 
     , 
     int 
     y 
     ); 
     int 
     main 
     () 
     { 
     int 
     x 
     ; 
     int 
     y 
     ; 
     printf 
     ( 
     "Entre com dois números para serem somados: " 
     ); 
     scanf 
     ( 
     "%d" 
     , 
     & 
     x 
     ); 
     scanf 
     ( 
     "%d" 
     , 
     & 
     y 
     ); 
     printf 
     ( 
     "A soma dos dois números é %d 
     \n 
     " 
     add 
     ( 
     x 
     , 
     y 
     ) 
     ); 
     getchar 
     (); 
     } 
     int 
     add 
     ( 
     int 
     x 
     , 
     int 
     y 
     ) 
     { 
     return 
     x 
     + 
     y 
     ; 
     } 
    
    • Perceba que o esboço da função ainda está no topo do programa. Isso diz ao compilador quando esperar que a função seja chamada e o que ela retornará. Isso é necessário apenas quando você deseja definir a função mais tarde no programa. É possível definir add() antes da função main() e o resultado seria o mesmo.
    • A funcionalidade das funções é definida na base do programa. A função main() coleta os inteiros do usuário e os envia para a função add() para que eles sejam processados. A função add() retorna o resultado para a main()
    • Agora que a add() foi definida, você pode usá-la em qualquer parte do programa.
    Publicidade
Parte 6
Parte 6 de 6:

Continuando o aprendizado

PDF download Baixe em PDF
  1. Esse artigo ensina o básico, mas ainda é muito pouco considerando o poder dessa linguagem. Um bom livro vai ajudar você a resolver problemas e poupá-lo de várias dores de cabeça durante a programação.
  2. Existem várias comunidades, tanto online quanto na vida real, dedicadas à programação e todas as suas linguagens. Encontre outros programadores de C com os mesmos objetivos para trocar ideias e você aprenderá bastante.
    • Participe de maratonas de programação, se possível. Nesses eventos, que podem ser individuais ou em times, as pessoas têm um limite de tempo para fazer programas e encontrar soluções, o que desenvolve bastante a criatividade. Você poderá encontrar vários bons programadores dessa forma. Essas maratonas acontecem regularmente no mundo inteiro.
  3. Você não precisa voltar a estudar para tentar entrar numa faculdade de Ciência da Computação, mas algumas aulas sobre o assunto podem acelerar bastante o aprendizado. Nada é mais útil que a ajuda de pessoas que têm muita fluência com a linguagem. Você pode encontrar essas aulas em centros comunitários ou em universidades. Algumas universidades podem permitir que você assista aulas de computação sem precisar se matricular.
  4. Depois de aprender C, é uma boa ideia dar uma olhada no C++, que é uma versão mais moderna do C, que permite uma maior flexibilidade. O C++ envolve orientação ao objeto, então aprendê-lo vai permitir que você crie programas poderosos para quase todos os sistemas operacionais.
    Publicidade

Dicas

  • Sempre faça comentários nos programas. Isso não apenas ajuda as pessoas que possam estar dando uma olhada no seu código mas também faz com que você se lembre sobre o que estava programando e por quê. É especialmente útil se você tiver de parar de programar por um tempo para se concentrar em outra coisa.
  • Ao encontrar um erro de sintaxe ao compilar e não conseguir resolver, procure no Google (ou outra ferramenta de pesquisa) informações sobre o erro. Existe uma boa chance de que alguém já tenha passado pelo mesmo problema e postado uma solução.
  • O seu código fonte precisa ter uma extensão *.c para que o compilador possa enxergá-lo como um arquivo de código fonte de C.
Publicidade

Sobre este guia wikiHow

Esta página foi acessada 92 962 vezes.

Este artigo foi útil?

Publicidade