0% acharam este documento útil (0 voto)
41 visualizações18 páginas

Introdução às Linguagens C e C++

O documento apresenta uma introdução às linguagens de programação C e C++, destacando suas características, tipos de dados, variáveis e funções. C é uma linguagem de propósito geral criada em 1972, enquanto C++ foi desenvolvido para melhorar C, mantendo compatibilidade. O texto também aborda a estrutura de programas, importação de bibliotecas e a importância de funções na programação.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
41 visualizações18 páginas

Introdução às Linguagens C e C++

O documento apresenta uma introdução às linguagens de programação C e C++, destacando suas características, tipos de dados, variáveis e funções. C é uma linguagem de propósito geral criada em 1972, enquanto C++ foi desenvolvido para melhorar C, mantendo compatibilidade. O texto também aborda a estrutura de programas, importação de bibliotecas e a importância de funções na programação.
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Introdução da linguagem C

C é uma linguagem de programação de propósito geral, estruturada, imperativa, procedural,


de baixo nível e padronizada, criada em 1972, por Dennis Ritchie, nos laboratórios Bell,
para ser usada no sistema operacional UNIX. Desde então, espalhou-se por muitos outros
sistemas operativos, e tornou-se uma das linguagens de programação mais usadas.
C tem como ponto fraco, a falta de proteção que dá ao programador. Praticamente tudo
que se expressa em um programa em C, pode ser executado. Os resultados são muitas
vezes totalmente inesperados, e os erros, difíceis de encontrar. Muitas linguagens de
programação foram influenciadas por C, sendo que a mais utilizada atualmente é C++, que
por sua vez foi uma das inspirações para Java.

Introdução da linguagem C++

O C++ foi inicialmente desenvolvido por Bjarne Stroustrup dos Bell Labs durante a década
de 1980 com o objetivo de melhorar a linguagem de programação C ainda que mantendo
máxima compatibilidade.
Ainda em 1983 o nome da linguagem foi alterado de C with Classes para C++. Novas
características foram adicionadas, como funções virtuais, sobrecarga de operadores e
funções, referências, constantes, gerenciamento manual de memória, melhorias na
verificação de tipo de dado e estilo de comentário de código de uma linha (//).

As vantagens são as possibilidades em programação de alto e baixo nível que não está sob
o domínio de uma empresa (em contraste do Java — Sun ou Visual Basic — Microsoft) e a
compatibilidade com C, resultando em vasta base de códigos.
Informação geral

Os programas de computador ou softwares, processadores de textos planilhas,


navegadores para internet e até mesmo o sistema operacional Windows, são arquivos cujas
as instruções dizem ao computador como realizar determinadas tarefas.
No ambiente Windows os arquivos com extensões EXE e COM contém comandos que o
computador pode executar. Em outras palavras esses arquivos de programas dão ao
computador instruções especificas para que ele realize determinada tarefa.
Para criar programas usa se uma linguagem considerada de alto nível como o C++ e
especifica as instruções que o computador que o computador deve executar e em seguida
por meio de um programa especial chamado compilador converter se essa instrução de
programação na linguagem da máquina (binaria) que o computador compreende.

Tipos de dados

Definição de dados: são informações que podem ser números ou caracteres com os
quais o programa opera.
Definição de variáveis: representam localizações de memória onde são armazenados
valores que podem ser modificados pelo programa.
Variáveis: podem conter letras, números e caracteres porem um caractere não pode ser
um numero, exemplo: pm_01 ou pm01 é permitido, mas 01_pm não é permitido. Letras
maiúsculas são diferentes de minúsculas.

Observação: o manipulador endl é utilizado para passar o cursor para a próxima linha.

Funções definidas pelo usuário

É uma sessão de código independente é autônoma escrita para desempenhar uma tarefa
especifica. Deve conter protótipo e definição da função;
Sintaxe:
Tipo_retorno nome_função (tipo_arg nome ..., tipo_arg nome n);
Tipo retorno: variável que a função retornará. Pode ser char, int, float, double e void, se
não retornará a nada.
Nome_função: descreve que a função faz;
Tipo-arg: tipo e nome das variáveis que serão para a função. Pode ser char, int, float.
Nomen: double, void.
Sempre termina com ; (ponto e vírgula).
Vetores

Vetores são matrizes unidimensionais. É uma estrutura de dados muito utilizada. É


importante notar que os vetores, matrizes bidimensionais e matriz de qualquer dimensão
são caracterizadas por terem todos elementos pertencentes ao mesmo tipo de dado. Para
se declarar um vetor pode se utilizar a seguinte forma geral.
Tipo_da variável nome_da_variavel
Quando o C++ vê uma declaração como está, ele reserva um espaço na memória
suficientemente grande para armazenar o numero de células especificadas em tamanho.
Float exemplo [20];

Strings
São vetores se caracteres (chars). As Strings são o uso mais comum para vetores.

Fazendo uma análise do primeiro programa

Com o primeiro programa em C, podemos verificar as questões mais básicas da linguagem


e também elementos encontrados em qualquer linguagem (lógico que cada uma à sua
maneira).
Comentários são linhas não compiladas, ou seja, são linhas que não são comandos. A
finalidade dessas linhas de comentários é fazer uma anotação (observação) sobre o
comando inserido. Os comentários são ignorados pelo compilador.
Esses comentários são introduzidos por barras duplas (//) e tudo que estiver depois da barra
será ignorado pelo compilador.

Os primeiros passos a serem tomados para montar um programa

#include <stdio.h>
A linguagem C tem a capacidade de importar bibliotecas de funções, porque cada um
desses comandos que chamamos de funções estão organizados em bibliotecas diferentes,
bastando a nós determinar em qual biblioteca o compilador irá encontrar a função.
O primeiro procedimento é determinado pelo caractere # para importar uma biblioteca basta
usar o comando include.

Função principal
Int main (void)
Todo o programa em C está escrito dentro da função main.
main é a primeira função a ser executada por qualquer programa em C mesmo que tenha
outras funções escritas antes.
Há compiladores que interpretam esta função mesmo incompleta, ou seja, você também
poderá escrever está função escrevendo
main ()
int main ()
main (void)
Mas para mantar a portabilidade e evitar erros desnecessários de compilação o melhor a
se fazer é declarar ela inteira int main (void)
Devemos sempre dar preferencias as letras minúsculas para não gerar um erro no seu
código.

Bloco de dados

Os bloco de dados são utilizados para determinar todas as linhas de código que comandos
ou funções devem executar de uma vez.
O bloco de dados é determinado pelo abrir e fechar chaves ({ }). Você abre chaves aonde
se deve começar a executar e fecha aonde se deve terminar a execução. Em um programa
pode haver mais de uma chave e o mesmo número de chave aberta ser o de chaves
fechadas.
Qualquer programa é determinado pelo que está dentro das chaves. O que está dentro das
chaves pode ser uma função, uma palavra reservada (como: if, else, for, ...) ou processo
(operação matemática).
Em C toda chamada de função, processo ou algumas palavras reservadas devem terminar
a linha com um ponto e vírgula (;).

Importando uma biblioteca em C++

A importação de uma biblioteca é dada pelo comando INCLUDE (incluir) seguido da


biblioteca entre os sinais de menor (<) e maior (>).
Porém, devemos notar que existem diferenças entre a importação de bibliotecas de C e de
C++.
Em C, a importação de bibliotecas são mais simples, bastando acrescentar para cada
biblioteca um include em uma linha diferente e o nome da biblioteca seguido de ponto H
(.h) - .h é a extensão do arquivo da biblioteca que vem da palavra inglesa HEADER
(cabeçalho) - se você esquecer de colocá-lo o programa não será compilado.
No exemplo abaixo, vamos incluir duas bibliotecas padrões de C.
1.#include <stdio.h>
2.#include <stdlib.h>
Como podem ver, cada biblioteca foi incluída em uma linha.
Em C++ a importação de bibliotecas é um pouco diferente. O comando de importação
continua sendo o include, mas neste caso não usaremos o ponto h (.h) no final da
bibliotecas legitimamente.
Após importar uma biblioteca por linha no final desta lista devemos mostrar o tipo de
funções usaremos. Na grande maioria dos casos usaremos a funções padrões de cada
biblioteca. Podemos fazer isso facilmente digitando a palavra using * indicando o espaço
de nome (namespace) standard (std) que quer dizer padrão em inglês.
Não se esqueça a palavra reservada using necessita terminar a linha com o ponto e
vírgula (;)

#include <stdlib.h> // biblioteca em C

#include<iostream> // biblioteca em C++

Using namespace std;

As bibliotecas de C são diferentes das bibliotecas de C++ apensar de muitos compiladores


de C++ suportarem as bibliotecas de C, nenhum compilador exclusivamente de C
suportam as bibliotecas C++.

Variáveis

A parte mais importante de qualquer programa é o processo. Uma variável é uma


informação que você pode usar dentro do programa.

Está informação está associada comum lugar especifico da memória (isso é feito pelo
compilador)

Cada variável utiliza uma determinada quantidade de armazenamento em memória. A


maneira como sabemos quantos bytes são utilizados é pelo tipo de variável. Variáveis do
mesmo tipo utilizam o mesmo número de bytes, não interessando qual é o valor que a
variável armazena.

Um dos tipos utilizados para armazenar números é o int que é usado para armazenar
números inteiros. Outro tipo é o char usado para armazenar caracteres (um símbolo, uma
letra, sinais, entre outros). Um char é armazenado em 1 byte de memoria

O processamento em geral é dado de forma genérico, ou seja por variáveis.

Cada variável tem um alcance e forma diferente de trabalhar o dado nela gravado. Por
exemplo se determinarmos uma variável inteira você jamais poderá digitar um número
decimal, pois todos os números depois do sinal decimal serão ignorados. Se formos
escrever um número decimal devemos utilizar o ponto (.) ao invés da virgula (,) se for
determinado uma variável de caractere pode ser tanto um inteiro como uma letra e assim
por diante.

A atribuição de valores as variáveis se dá de duas formas: ou na inicialização ou durante


um processo.

A atribuição de valores é indicada pelo sinal de igual (=) sempre da direita da esquerda.

O que eu quero dizer é que a variável à esquerda do igual recebe o valor ou resultado de
uma conta a direita do igual.

Exemplo:

Se o digito a=b, quero dizer que receberá o valor contido em b ou a = b + c quero dizer a
receberá o valor do resultado de b + c.

Processos

Os processos são contas matemáticas (cálculos) que podem ser feitos com números,
variáveis ou ambos.
Abaixo está uma tabela com os operadores mais comuns

+ Adição
- Subtração
* Multiplicação
/ Divisão
% Módulo (divisão no qual é obtido o resto)
++ Incremento de 1
-- Decremento de 1
Segue a convenção de expressões matemáticas. Por exemplo:
Se você fizer 1+2*3, o resultado será 6 e não 9, pois a multiplicação deve ser calculada
primeiro. Para esta conta dar 9 devemos indicar que a soma deve ser feita antes da
multiplicação. Ela ficaria assim, (1+2)*3. O que está entre parênteses deve ser
calculado primeiro.

Como podemos ver além das operações matemáticas básicas, temos funções estritamente
de programação como a divisão que resulta o resto, o incremento e o decremento.
#include <stdio.h>
int main (void){
int soma, subtracao, multiplicacao, divisao, decremento, incremento, resto;
soma=50+50;
subtracao=200-200;
multiplicacao=5*5;
divisao=10/5;
decremento=10;
decremento--;
incremento=10;
incremento++;
resto=10%3;
printf ("soma = %d\n", soma);
printf ("subtracao = %d\n", subtracao);
printf ("multiplicacao = %d\n", multiplicacao);
printf ("divisao = %d\n", divisao);
printf ("decremento = %d\n", decremento);
printf ("incremento = %d\n", incremento);
printf ("resto = %d\n", resto);
return 0;
}

Variáveis são endereços de memória na qual podemos atribuir ou mudar o valor.


A declaração da variável deve proceder da seguinte maneira:
1º especificar o tipo de variável
2º nomear a variável
Obs. Não podemos esquecer que o C / C++ é case sensitive, ou seja, ele diferencia
as letras maiúsculas das minúsculas.
Por exemplo, x não é a mesma coisa de X.
Um outro cuidado que devemos ter é não começar uma variável por número, mas podemos
terminá-la.
Exemplo: É errado declarar 2x, mas podemos declarar x2 ou _2x.
Como uma última precaução, não podemos usar espaços, pois o compilador pode entender
como sendo outra variável não separada por vírgula e acusará um erro. No lugar do espaço,
pode-se usar underline (_).
Exemplo: É errado digitar resultado da raiz, mas é correto, resultado_da_raiz.

Tipos de varáveis

O primeiro tipo é o inteiro. Declara se como int nomedavariável. O tipo inteiro c/c++ é uma
variável de 16 bits (2bytes)

O segundo é o inteiro long. Declara se como long int nomedavariável. Ele é uma melhoria
do inteiro comum, pois dobra o número de bits.

O outro tipo é o real ou decimal que também chamamos de ponto flutuante. Declara se
como float nomedavariável. O tipo flutuante é uma variável que tem uma precisão de 7
dígitos e consome 4 bytes.

E tem também um outro tipo que é uma melhoria do ponto flutuante, o dobro. Declaramos
como double nomedavariável. O double consome 8 bytes de memória para seu
armazenamento.

Funções
Funções são usadas para criar pequenos pedaços de códigos separados do programa
principal. Em c / c++ tudo na verdade é uma função. Int main (void) é uma função, por
exemplo.

Exceto a função Main, todas as outras funções são segundarias o que ela significa que elas
podem existir ou não.

Funções são importantes porque elas retornam valores, ajudam fragmentar o código em
partes menores, mais fáceis de lidar e ainda por cima podem ser utilizadas mais de uma
vez no mesmo programa, poupando preciosos minutos de programação e inúmeras linhas
de códigos.

Criando funções sem argumentos

Funções são como variáveis que guardam inúmeras linhas de código. Se não prototipadas*,
elas devem ser escritas antes da função MAIN, afim de serem compiladas primeiro para
poderem ser utilizadas pela função main.
É quase o mesmo que querer comer uma maçã do pomar e quando chegar lá não tem
nenhuma, você continuará com fome. Porque não tem maçãs produzidas no pomar. Seria
o mesmo que querer utilizar uma função no MAIN e não tem nenhuma função produzida
anteriormente.
Como havíamos dito, funções são como variáveis. Então, criamos uma função indicando o
tipo de retorno (saída) que será int, float, etc..Nomeamos a função (valem as mesma regras
das variáveis, ex.: Não começa nomes de funções com número) e terminamos colocando
entre parênteses os argumentos. Como nossas primeiras funções não terão argumentos
entre parênteses usaremos VOID (do inglês VAZIO). Todo o código da função deve estar
dentro de um bloco de instrução ({ }), mesmo que haja apenas uma linha.
Obs.: Não se usa ponto-e-vírgula no final da criação da função.
Após a função ser criada, basta chamarmos a função dentro da função principal MAIN.
Para chamá-la, apenas digitamos o nome da função e entre parênteses colocamos seus
argumentos. Como esta função não tem argumentos, simplesmente colocamos nada entre
os parênteses
#include <iostream>
#include <stdlib>
using namespace std;
void mensagem (void) //perceba que não há ponto-e-vírgula aqui!
{
cout <<"Ola! Eu sou uma funcao.\n";
}
int main (void){
mensagem (); //chamando uma função sem argumentos
system ("pause");
return 0;
}

Funções que retornam valores


Como já foi dito uma função pode retornar um valor e esse valor pode ou não ser guardado
em uma variável isso depende de como queremos lidar com isso.
Para retornar um valor usamos o comando return. Toda vez que retornamos um valor é
porque terminamos a função. Por isso todo o programa utilizado ate agora termina em
return 0;. Mas em projetos maiores tem por conversão utilizar uma constante exit success
para deixar o programa com mais legibilidade.
No código abaixo usaremos uma função que chamaremos de somar que retornará um
inteiro resultante da soma de duas variáveis. No programa (função main) guardaremos o
retorno da função em uma variável chamada de resultadodafucao.
#include <iostream>
#include <cstdlib>
using namespace std;
int somar (void){
int a, b, resultado;
cout <<"Digite um numero:\n";
cin >> a;
[Link] ();
cout <<"Digite mais um numero:\n";
cin >> b;
[Link] ();
resultado=a+b;
return resultado; //valor que será retornado
}
int main (void){
int resultadodafuncao;
resultadodafuncao= somar(); //gravando o resultado da função em uma variável
cout <<"\n O resultado da funcao e "<<resultadodafuncao<<"\n";
system ("pause");
return EXIT_SUCCESS;
}

Funções de entrada
A entrada de dados é algo muito importante para qualquer programa que deve ser usados
em conjunto com uma função de saída.

Funções de entrada C++


As funções de entrada de c++ são encontradas na biblioteca padrão de entrada/saída o
iostream.
Toda entrada de dado deve ser armazenada em um endereço de variável assim como em
C.
A entrada de dados é controlada pela função CIN. Todas as camadas devem esta depois
do acumulador de entrada (>>) e não é necessário identificar o tipo de dado, e nem indicar
o endereço da variável, apenas digitamos o nome da variável.

Cuidado: não confunda os acumuladores. O acumulador de saída é << e o


acumulador de entrada é >>.

#include <iostream>
using namespace std;
int main (void)
{
int nr;
cout <<"Digite um numero: ";
cin >> nr;
cout <<"\n\n\nVoce digitou o numero: "<<nr;
return 0;
}

Diferentemente do scanf do C, não podemos indicar várias entradas com a função cin. Ou
seja, você deve incluir um CIN para cada entrada.

Funções de saída

Funções de saída são utilizadas para interface com o usuário, ou seja, define se do
pressuposto de comunicação entre a máquina e o usuário de alguma maneira.
Toda comunicação da máquina e do usuário deve ser calculada pelo programador de forma
a induzir o usuário a praticar determinada ação.
Por exemplo se você imprimir a mensagem para o usuário digitar dois números para serem
somados e quando ele apertar a tecla ENTER mostrará o resultado.

Funções de saída de C

As funções de saída de C são encontradas na biblioteca padrão de entrada/saída, a


STDIO.H.
No caso, para imprimir uma mensagem basta adicionar a linha com a função printf. Tudo
que deve ser mostrado na tela deve estar especificado dentro dos parênteses () e a
mensagem deve estar dentro de aspas ("").
#include <stdio.h> // biblioteca padrão I/O de C
int main (void)
{
printf ("Esta e uma mensagem sendo mostrada na tela");
return 0;
}

Controle de texto

O controle de texto é importante pois melhora a legibilidade do usuário. Todos os controles


são determinados pelo caractere barra invertida (\) e uma letra. Cada letra faz algo
determinado, veja a tabela abaixo e o exemplo:
\n Pula de linha
\t Adiciona tabulação
\a Adiciona um bip
\b Faz o cursor voltar um caractere
\r Faz o cursor voltar a linha inteira
Funções de saída C++

As funções de saída de C++ são encontradas na biblioteca padrão de entrada / saída a


iostream.
No caso, para imprimir uma mensagem basta adicionar a linha com a função cout. Tudo
que deve ser mostrado na tela deve ser especificado entre os acumuladores de saída (<<)
e as aspas (“ ”).

#include <iostream> // biblioteca padrão I/O de C++


using namespace std;
int main (void)
{
cout <<"Esta e uma mensagem sendo mostrada na tela";
return 0;
}

Exibindo resultado de variáveis

O que também podemos fazer é imprimir variáveis como por exemplo o resultado de uma
soma.

#include <iostream>
using namespace std;
int main (void)
{
int a, b, resultado;
a=5;
b=10;
resultado=a+b;
cout <<a<<" + "<<b<<" = "<<resultado;
return 0;
}

No exemplo acima, atribuímos os valores de 5 na variável a, 10 na variável b e guardamos


o resultado de a+b na variável resultado.

Estrutura seletiva IF e ELSE

Uma ação muito importante, pois toma uma decisão definindo o que é verdadeiro e o que
é falso. Capaz de definir caminhos diferentes de acordo com decisões que o próprio
programa toma. Para isso, precisamos de uma estrutura seletiva da qual o único valor
possível é o bit 1 ou 0, resumindo: retornar o valor VERDADEIRO ou FALSO.
Exemplificando: Se (IF) for tal coisa, faça isso! Caso contrário (ELSE), faça aquilo!

Usando IF

Para usar o IF basta digitar entre parênteses o que deve ser comparado.
IMPORTANTE: IF é uma palavra reservada que não aceita ponto-e-vírgula (;) no final.
Se for verdadeiro, o programa executará a primeira linha logo abaixo do if.
Mas, e se quisermos executar várias linhas se if for verdadeiro?
Se o if tiver que executar várias linhas, todas as linhas que devem ser enquadradas dentro
do bloco de dados - as chaves ({}).

Usando ELSE

O ELSE só existe se tiver um IF. O else só será executado se o IF for falso.


Else executará só a primeira linha abaixo dele. Se o else tiver que executar várias linhas,
vale a mesma regra de if. Todas as linhas a serem executadas deverão estar contidas
dentro do bloco de dados ({}).

Exemplo

Calcular a média das duas notas de um aluno. A primeira nota é igual a 5.5 e a segunda
nota é igual a 8.5. Informe ainda se ele está aprovado ou de prova final, baseado na média
de aprovação igual a 7.0.

#include <stdio.h>
#include <stdlib.h>
int main() {
float nota1, nota2, media;
nota1 = 5.5;
nota2 = 8.5;
media = (nota1 + nota2)/2;
printf("Media = %f", media);
if(media >= 7.0)
printf(" - Aprovado");
else // se a média é menor ou igual a 7.0
printf(" - Prova final");

printf("\n\n"); // salta 2 linhas em branco


system("pause"); // não permite que a janela do prompt feche
return 0;
}

Estrutura de repetição - FOR

As estruturas de repetições são muito importantes para programas, pois muitas vezes o
mesmo procedimentos têm que ser executados mais de uma vez.
Em C/C++, basicamente existem três tipos de estrutura de repetição: FOR, WHILE e DO
WHILE.
O for precisa de uma variável para controlar os loops (voltas). Em for, essa variável deverá
ser inicializada, indicada seu critério de execução, e forma de incremento ou decremento.
Ou seja, for precisa de três condições. Vale salientar que essas condições são separadas
por ponto-e-vírgula (;).
 ITERAÇÃO é sinônimo de repetição.

O FOR também segue a mesma regra de IF. Caso haja mais de uma linha a ser executada
pelo comando FOR, essas deverão estar agrupadas num bloco de dados ( { } ).

Estrutura de repetição - WHILE

Uma outra forma de iteração (repetição) em C/C++ é o WHILE.


While executa uma comparação com a variável. Se a comparação for verdadeira, ele
executa o bloco de instruções ( { } ) ou apenas a próxima linha de código

WHILE (comparação)

Neste exemplo serão mostrados os números pares entre 0 e 100.

#include <iostream>
#include <cstdlib>
using namespace std;
int main (void){
int par=0;
cout <<"Os numeros pares de 0 a 100 sao:\n\n";
while (par<=100)
{
cout <<par<<"\t";
par+=2; //o mesmo que par=par+2
}
system ("pause");
return 0;
}

O ideal é utilizar o WHILE em um loop definido pelo usuário, que a partir de uma entrada
ele termine. Ou seja, enquanto o usuário não fizer determinada ação, o loop continuará a
dar voltas.
#include <iostream>
#include <stdlib>
using namespace std;
int main (void){
int nr=1;
while (nr!=0) //enquanto nr for diferente de 0
{
cout <<"Digite um numero (0 para finalizar): ";
cin >> nr;
[Link] ();
if (nr>0)
cout <<"Este numero e positivo\n";
else
cout <<"Este numero e negativo\n";
}
return 0;
}
No exemplo, o programa só irá parar quando o usuário digitar 0, qualquer outro número
fará com que o programa continue dando loop. Perceba que a variável ainda está sendo
inicializada.

Estrutura de repetição - DO WHILE

A estrutura de repetição DO WHILE parte do princípio de que deve-se fazer algo primeiro
e só depois comparar uma variável para saber se o loop será executado mais uma vez.
Devemos proceder da seguinte maneira:
DO {bloco de instruções} WHILE (comparação);
Usamos DO, depois escrevemos tudo que o DO deve fazer no bloco de instruções, no final
do bloco colocamos o WHILE com a comparação entre parênteses, e não se esqueça que
neste caso termina-se a linha do WHILE com ponto-e-vírgula (;).

Switch e Case

Uma outra forma de estrutura seletiva é o SWITCH. Dentro dos switch há o case (que
significa caso). Ou seja, é quase que um if com várias possibilidades, mas com algumas
diferenças importantes.
1ª diferença: Os cases não aceitam operadores lógicos. Portanto, não é possível fazer
uma comparação. Isso limita o case a apenas valores definidos.
2ª diferença: O switch executa seu bloco em cascata. Ou seja, se a variável indicar para o
primeiro case e dentro do switch tiver 5 cases, o switch executará todos os outros 4 cases
a não ser que utilizemos o comando para sair do switch. (Nos referimos ao BREAK).
Agora, que conhecemos diferenças importantes, vamos ver como proceder com o switch /
case.
Primeiro o comando SWITCH e entre parênteses a váriavel na qual está guardado o valor
que será avaliado pelo case. Então, abre-se o bloco de dados. Dentro do bloco de dados
colocamos o comando CASE e logo após um valor terminando a linha com dois pontos (:).
Preste atenção no tipo de dado que será colocado, pois há diferenças entre um dado e
outro. Por exemplo: 1 não é a mesma coisa que '1' e 'a' não é a mesma coisa que 'A'...
Então, é estruturado os comando que serão executados pelo case, que seria isso:
SWITCH (variável){
CASE valor1:
Dados a serem executados
BREAK;
CASE valor2:
Dados a serem executados
BREAK;
}
Default

Default, do inglês padrão, é o case que é ativado caso não tenha achado nenhum case
definido. Ou seja, é o que aconteceria em último caso. Vamos imaginar o seguinte cenário:
Seu programa pede para que o usuário digite apenas duas opções (S ou N) para reiniciar
o programa. Mas, propositalmente ou por engano, o usuário digita uma opção totalmente
diferente. E agora? O que seu programa deve fazer? É aqui que o default entra. Geralmente
o default é quando é previsto um erro, uma entrada de dado incorreta ou não de acordo
com o contexto.

Variáveis Globais e Locais

Agora que aprendemos como criar funções, uma nova concepção deve estar em mente: A
diferença entre variáveis globais e locais.

Variáveis locais
Variáveis locais são aquelas nas quais apenas a função onde ela está pode usá-la. Por
exemplo, se declaramos int x dentro da função main, apenas a função main poderá utilizá-
la para guardar dados e nenhuma outra função poderá utilizar o int x da função main.

Variáveis globais

As variáveis globais são declaradas da mesma forma que uma variável local - primeiro o
tipo, depois o nome da variável. Mas a diferença é que esta variável é declarada fora de
qualquer função. Por convenção, geralmente, utilizamos um underline (_) no começo do
nome da variável para facilitar a leitura do programa e facilmente percebermos de que se
trata de uma variável global.
Variáveis globais podem ser utilizadas por qualquer função. E qualquer função pode alterar
o valor, utilizá-la em um processo ou até mesmo atribuir o valor que quiser.

Como criar e compilar um programa usando o CodeBlocks

Você também pode gostar