SlideShare une entreprise Scribd logo
1  sur  39
Télécharger pour lire hors ligne
Curso: Manutenção e Suporte em Informática
Disciplina: Linguagem de Programação
Professor: Mauro Jansen

Linguagem C
Introdução, Tipos, variáveis, expressões
e estruturas de controle
Introdução à linguagem C

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

2
Histórico
Criada na década de 70 por Denis Ritchie
(Bell Labs)
Objetivo: ser uma linguagem mais fácil que
o Assembler mas que permitisse grande
controle sobre o hardware, para a
programação do sistema Unix
Influência das linguagens BCPL e B

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

3
Características
Genérica: usada para a criação de
programas para diversas áreas
Ex: aplicativos, sistemas operacionais,
automação industrial, engenharia, física,
química, etc.

Linguagem “mista”: tem características de
linguagem de alto e baixo nível
Induz a uma boa estruturação de
programas
Influenciou várias outras linguagens
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

4
Características
É “case sensitive”: minúsculas e maiúsculas
fazem diferença
Variável “nome” é diferente de “Nome”

É compilada (gera arq.executável)

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

5
O pré-processador
Parte do compilador C que trata alguns
textos (comandos) do código-fonte antes
da tradução em código executável
Esses comandos são as diretivas do préprocessador. Ex:
#define
#include

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

6
Diretivas do pré-processador
#define: define um identificador e uma
sequência de caracteres que será
substituída pelo identificador no códigofonte. Ex:
Em todo o código fonte, PI
#define PI 3.1415

será substituído por
3.1415

#include: inclui um cabeçalho ou outro
arquivo-fonte no ponto onde está a
Inclui o arquivo “stdio.h”
diretiva. Ex:
(definições padrões para
#include <stdio.h>
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

entrada e saída de dados)
no programa-fonte
7
Estrutura básica de um programa
em C
#Include <biblioteca1.h>
#Include <biblioteca2.h>
...
Void main()
{
<Declaração de variáveis>
...
<comandos>
...
}

Inclusão de arquivo de
bibliotecas de comandos
Função main(): é
obrigatória. É a primeira
função chamada quando
o programa é iniciado

Delimitadores de inicio e fim de
bloco de comandos

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

8
Comentários
Comentários são úteis para documentar o
programa, e devem ser sempre usados
Existe dois modos:
Posição livre: usa-se o comando //
Várias linhas: usa-se o comando /* */

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

9
Palavras reservadas
São os comandos e funções próprias do
vocabulário da linguagem. Ex.:
auto, break, case, char, const, continue,
default, do, double, else, enum, extern, float,
for, goto, if, int, long, register, struct, switch,
typedef, union, unsigned, void, volatile, while,
etc.

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

10
Exemplo de programa em C
/*
Programa: calcular a média entre duas notas
Autor...: prof.Mauro
*/
#Include <stdio.h>
Void main()
{
float nota1,nota2;
// declaração de variáveis
printf(“Digite a primeira nota: “);
scanf(“%f”,&nota1);
printf(“Digite a segunda nota: “);
scanf(“%f”,&nota2)
printf(“A média é: %f”,(nota1+nota2)/2);
}

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

11
Comando de saída: printf
Sintaxe:

printf(<string de controle>,<lista de argumentos>)

Mensagem (string) com códigos de
controle embutidos na mesma

Códigos de controle:

Valores que serão substituídos na
mensagem, no lugar de cada código de
controle iniciado por %

Código

Formato

Código

Formato

%d

Inteiro com sinal

%X

Hexadecimal

%f

Float (número real)

%o

Octal

%c

Caractere

%E

Notação científica

%s

String

%p

Ponteiro

%u

Inteiro sem sinal

n salta
linha

Exemplos:

printf(“O valor de PI é %f”,3.1415);
printf(“Meu nome é %s e eu tenho %d anosn”,”João”,18);

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

12
Comando de entrada: scanf
Sintaxe:
scanf(<string de controle>,<lista de argumentos>)
códigos de controle que identificarão o
tipo de dado a ser digitado pelo usuário

Variável(is) que receberá(ão) os dados,
precedida(s) pelo sinal &

Exemplo:
#Include <stdio.h>
Void main()
{
char c;
float n;
printf(“Digite uma letra: “);
scanf(“%c”,&c);
printf(“Digite um valor real: “);
scanf(“%f”,&n);
printf(“Letra: %c , número: %f”,c,f);
}
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

13
Tipos de dados, constantes,
variáveis, operadores e
expressões em C

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

14
Tipos de dados
A linguagem C tem os tipos básicos
Char (caractere), Int (inteiro), float (real),
double (real)

E modificadores de tipo, que vêm antes do
tipo e podem ser combinados:
Unsigned: sem sinal
Signed: com sinal (padrão)
Short: menor precisão (padrão)
Long: maior precisão
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

15
Tipos de dados

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

16
Constantes e variáveis
Constante: porção de dados que não muda seu
valor durante a execução do programa.
Exemplos: 23, ‘X’, “Linguagem C”, 1.234
Constantes não precisam de nome, mas podemos
nomeá-las usando a diretiva #define. Ex: #define PI
3.1415

Variável: porções de dados que podem mudar
seu valor durante a execução do programa
Uma variável precisa ter um nome e tipo e precisa ser
declarada e inicializada

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

17
Constantes de barra invertida
São códigos que iniciam com uma barra invertida que
representam uma constante tipo caractere dentro de
strings, como no comando printf. Veja alguns:
Código

Significado

Muito usado no
printf para saltar
para próxima linha

n

Nova linha (new line)

”

Aspas

’

Apóstrofo

0

Nulo



Barra invertida

t

Tabulação horizontal

a

Sinal sonoro (beep)

N

Constante octal (N é o valor da constante)

xN

Constante hexadecimal (N é o valor da constante)

Prof. Mauro Jansen
Regras para nomes de variáveis
Começar com letra ou sublinhado (_)
Caracteres seguintes podem ser letras,
números ou sublinhado
Não pode ser palavra reservada ou função
Maiúsculas e minúsculas fazem diferença

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

19
Declaração e inicialização de
variáveis
A declaração é feita da seguinte forma:
<tipo de dado> <lista de variáveis>;

Obs: Na linguagem C não há uma seção
específica para declaração de variáveis
Exemplos:
char ch,letra;
long cont;

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

20
Declaração e inicialização de
variáveis
Inicialização: podemos atribuir valor no
momento da declaração ou depois, usando
o operador de atribuição “=“ :
Char ch=‘D’;
Int num=123;
num=10;

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

21
Operadores aritméticos
Usados em operações matemáticas
Operador

Ação

+

Soma

-

Subtração ou troca de sinal

*

Multiplicação

/

Divisão

%

Resto da divisão

++

Incrementa valor de uma variável

--

Decrementa valor de uma variável

+=

Atribuição com soma

-=

Atribuição com subtração

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

22
Operadores relacionais
Usados em comparações entre valores
Operador
>
>=
<

Significado
Maior
Maior ou igual
Menor

<=

Menor ou igual

==

Igual

!=

Diferente

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

23
Operadores lógicos
Usados em expressões lógicas compostas
Operador

Significado

&&

Operador E. Retorna verdadeiro se
ambos valores forem verdadeiros

||

Operador OU. Retorna verdadeiro se
pelo menos um for verdadeiro

!

Operador NÃO. Retorna o contrário do
valor informado.

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

24
Exemplo com operadores e
expressões
#Include <stdio.h>
Void main()
{
int a,b,c,d;
a=10;
b=22;
c=30;
d=40;
printf(“a+b = %d”,a+b);
// soma a e b
printf(“a-b = %d”,a-b);
// subtrai b de a
printf(“b%%a = %d”,b%a);
// resto da divisão de b por a
a++;
// incrementa a (mesmo que a=a+1)
b--;
// decrementa b (mesmo que b=b-1)
c+=a;
// soma a em c
(mesmo que c=c+a)
d-=b;
// soma e em d
(mesmo que d=d+b)
printf(“a=%d, b=%d, c=%d, d=%d”,a,b,c,d);
}

OBS: No próximo bloco veremos exemplos com
operadores relacionais Linguagem de Programação
e lógicos
Prof. Mauro Jansen

Linguagem C – parte 1

25
Estruturas de controle e
fluxo em C

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

26
Estrutura condicional if
Equivalente em pseudocódigo: se-senão-fimse

Sintaxe:
If(<condição>)
<bloco de comandos>
[else
<bloco de comandos 2>]

Se a condição for verdadeira, executa bloco de
comandos 1, senão executa bloco de comandos 2
OBS: Um bloco de comando composto por
mais de um comando deve iniciar com { e
terminar com }
O bloco do else é Linguagem de Programação
opcional
Prof. Mauro Jansen

Linguagem C – parte 1

27
Estrutura condicional if (se) Exemplo
/*
Programa: calcular a média e mostrar situação
*/
#Include <stdio.h>
Void main()
{
float nota1,nota2,media; // declaração de variáveis
printf(“Digite a primeira nota: “);
scanf(“%f”,&nota1);
printf(“Digite a segunda nota: “);
scanf(“%f”,&nota2);
media=(nota1+nota2)/2;
printf(“A média é: %f n”,media);
if(media>=7)
printf(“Você está aprovado.n”);
else
printf(“Você está de recuperação.n”);
}
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

28
Estrutura condicional switch-case
Equivalente pseudocódigo: escolha

Sintaxe:
Switch (<variável>)
{
case <constante1>:
<declaração1>;
break;
case <constante2>:
<declaração2>;
break;
case <constante_n>:
<declaraçãoN>;
break;
default:
<declaração default>
}

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

29
Estrutura condicional switch-case
Exemplo
#Include <stdio.h>
void main()
{
float n1,n2;
char op;
printf(“Digite um número: “);
scanf(“%f”,&n1);
printf(“Digite a operação (+,-,* ou /): “);
scanf(“%c”,&op);
printf(“Digite outro número: “);
scanf(“%f”,&n2);
switch (op)
{
case ‘+’: printf(“Soma=%f”,n1+n2);
break;
case ‘-’: printf(“Soma=%f”,n1-n2);
break;
case ‘*’: printf(“Soma=%f”,n1*n2);
break;
case ‘/’: printf(“Soma=%f”,n1/n2);
break;
default: printf(“Você digitou uma operação inválida!”)
}
}
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

30
Operador ternário
Operador que permite simplificar tomadas
de decisão simples
Sintaxe:
<expressão1> ? <expressão2> : <expressão3>

Exemplo:

Equivale a:

max=(a>b) ? a : b;
If (a>b)
max=a;
Else
max=b;
Prof. Mauro Jansen
Estrutura de repetição for
Equivalente pseudocódigo: para - fimpara

É a repetição contada. Sintaxe:
for(<inicialização>;<condição>;<incremento>)
<bloco de comandos>

Inicialização: expressão de inicialização. Ex:
n=0
Condição: expressão condição para continuar a
repetição. Ex: n<=10
Incremento: expressão de incremento. Ex:
n++
Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

32
Estrutura de repetição for
exemplo:

Programa para contar de 1 a 100:
#include <stdio.h>
{
int n;
for(n=1 ; n<=100 ; n++)
{
printf("Contando: %dn",n);
}
}

Prof. Mauro Jansen
Estrutura de repetição while
Equivalente pseudocódigo: enquanto–faça-fimenquanto

Sintaxe:
while(<condição>)
<bloco de comandos>

Inicia e repete o bloco de comandos
enquanto a condição for verdadeira
É a repetição com teste no início

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

34
Estrutura de repetição while
Exemplo:
Soma quantidade indeterminada de números
#include <stdio.h>
int main()
{
float n=1,soma=0;
while (n!=0) {
printf("Digite um numero (zero=fim):");
scanf("%f",&n);
soma+=n;
}
printf("A soma dos numeros digitados é: %f",soma);
}

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

35
Estrutura de repetição do..while
Equivalente pseudocódigo: repita - até

Sintaxe:
do
<bloco de comandos>
While(<condição>);

Executa o bloco de comando e repete
enquanto a condição for verdadeira
É a repetição com teste no final

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

36
Estrutura de repetição do..while
Exemplo:
Mesmo anterior, agora com do..while:
#include <stdio.h>
{
float n=0,soma=0;
do {
printf("Digite um numero (zero=fim):");
scanf("%f",&n);
soma+=n;
} while (n!=0);
printf("A soma dos numeros digitados é: %fn",soma);
}

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

37
Comandos que afetam as
estruturas de repetição
Comando break: interrompe a repetição,
continuando após o bloco de comandos a
ser repetido
Comando continue: interrompe apenas a
repetição atual, voltando ao início do laço

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

38
Atividades no DevC++
PRÁTICA, muita PRÁTICA:
Testar os exemplos dos slides
Testar os exemplos da apostila
Resolver exercícios da apostila
Resolver as atividades da semana

Prof. Mauro Jansen

Linguagem de Programação
Linguagem C – parte 1

39

Contenu connexe

Tendances

Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Gercélia Ramos
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programaçãorodfernandes
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programaçãoElaine Cecília Gatto
 
Introdução à programação
Introdução à programação Introdução à programação
Introdução à programação João Piedade
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de SoftwareNécio de Lima Veras
 
Introdução a Linguagem de Programação C
Introdução a Linguagem de Programação CIntrodução a Linguagem de Programação C
Introdução a Linguagem de Programação CGercélia Ramos
 
Software livre x software proprietário
Software livre x software proprietárioSoftware livre x software proprietário
Software livre x software proprietárioprofesssorcarlinho
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareÁlvaro Farias Pinheiro
 
Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++PeslPinguim
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Gercélia Ramos
 
Questoes-microsoft-word-2007
Questoes-microsoft-word-2007Questoes-microsoft-word-2007
Questoes-microsoft-word-2007Marco Guimarães
 
Exercicio banco de_dados
Exercicio banco de_dadosExercicio banco de_dados
Exercicio banco de_dadosRafael Lima
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à ProgramaçãoMario Sergio
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Mariana Camargo
 
Python e django na prática
Python e django na práticaPython e django na prática
Python e django na práticaRafael Cassau
 

Tendances (20)

Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
Pseudocódigo - Estrutura de Repetição (Lógica de Programação)
 
Algoritmos - Procedimentos
Algoritmos - ProcedimentosAlgoritmos - Procedimentos
Algoritmos - Procedimentos
 
Material de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de ProgramaçãoMaterial de Apoio de Algoritmo e Lógica de Programação
Material de Apoio de Algoritmo e Lógica de Programação
 
Aula 1 aed - lógica de programação
Aula 1   aed - lógica de programaçãoAula 1   aed - lógica de programação
Aula 1 aed - lógica de programação
 
Algoritmo recursivo
Algoritmo recursivoAlgoritmo recursivo
Algoritmo recursivo
 
Introdução à programação
Introdução à programação Introdução à programação
Introdução à programação
 
Apresentação Linguagem C
Apresentação Linguagem CApresentação Linguagem C
Apresentação Linguagem C
 
Introdução à Engenharia de Software
Introdução à Engenharia de SoftwareIntrodução à Engenharia de Software
Introdução à Engenharia de Software
 
Introdução a Linguagem de Programação C
Introdução a Linguagem de Programação CIntrodução a Linguagem de Programação C
Introdução a Linguagem de Programação C
 
Software livre x software proprietário
Software livre x software proprietárioSoftware livre x software proprietário
Software livre x software proprietário
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 
Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++Aula 01 - Introdução ao C++
Aula 01 - Introdução ao C++
 
Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)Pseudocódigo ou Portugol (Lógica de Programação)
Pseudocódigo ou Portugol (Lógica de Programação)
 
Questoes-microsoft-word-2007
Questoes-microsoft-word-2007Questoes-microsoft-word-2007
Questoes-microsoft-word-2007
 
Exercicio banco de_dados
Exercicio banco de_dadosExercicio banco de_dados
Exercicio banco de_dados
 
Introdução à Programação
Introdução à ProgramaçãoIntrodução à Programação
Introdução à Programação
 
Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }Lógica de programação { para iniciantes }
Lógica de programação { para iniciantes }
 
Curso javascript básico
Curso javascript básicoCurso javascript básico
Curso javascript básico
 
Python e django na prática
Python e django na práticaPython e django na prática
Python e django na prática
 

En vedette

Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)Mauro Pereira
 
Microprocessadores ii arquitetura
Microprocessadores ii arquiteturaMicroprocessadores ii arquitetura
Microprocessadores ii arquiteturaMauro Pereira
 
Redes padroes e cabeamento
Redes padroes e cabeamentoRedes padroes e cabeamento
Redes padroes e cabeamentoMauro Pereira
 
Algoritmos e lp parte 5-subalgoritmos
Algoritmos e lp parte 5-subalgoritmosAlgoritmos e lp parte 5-subalgoritmos
Algoritmos e lp parte 5-subalgoritmosMauro Pereira
 
6 softwares de manutenção
6 softwares de manutenção6 softwares de manutenção
6 softwares de manutençãoMauro Pereira
 
Algoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentosAlgoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentosMauro Pereira
 
Tecnologia e turismo - Tecnologias de hardware
Tecnologia e turismo - Tecnologias de hardwareTecnologia e turismo - Tecnologias de hardware
Tecnologia e turismo - Tecnologias de hardwareMauro Pereira
 
Informática 1-conceitos e componentes
Informática  1-conceitos e componentesInformática  1-conceitos e componentes
Informática 1-conceitos e componentesMauro Pereira
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosMauro Pereira
 
Livro Linguagem C - Completo
Livro Linguagem C - CompletoLivro Linguagem C - Completo
Livro Linguagem C - CompletoMarcos Quinho
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoMauro Pereira
 

En vedette (14)

Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)Microprocessadores ii revisão de linguagem de programação (parte2)
Microprocessadores ii revisão de linguagem de programação (parte2)
 
Microprocessadores ii arquitetura
Microprocessadores ii arquiteturaMicroprocessadores ii arquitetura
Microprocessadores ii arquitetura
 
Apostila c
Apostila cApostila c
Apostila c
 
Redes padroes e cabeamento
Redes padroes e cabeamentoRedes padroes e cabeamento
Redes padroes e cabeamento
 
Algoritmos e lp parte 5-subalgoritmos
Algoritmos e lp parte 5-subalgoritmosAlgoritmos e lp parte 5-subalgoritmos
Algoritmos e lp parte 5-subalgoritmos
 
Algoritmos Aula 01
Algoritmos Aula 01Algoritmos Aula 01
Algoritmos Aula 01
 
6 softwares de manutenção
6 softwares de manutenção6 softwares de manutenção
6 softwares de manutenção
 
Algoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentosAlgoritmos e lp parte 2-fundamentos
Algoritmos e lp parte 2-fundamentos
 
Tecnologia e turismo - Tecnologias de hardware
Tecnologia e turismo - Tecnologias de hardwareTecnologia e turismo - Tecnologias de hardware
Tecnologia e turismo - Tecnologias de hardware
 
Informática 1-conceitos e componentes
Informática  1-conceitos e componentesInformática  1-conceitos e componentes
Informática 1-conceitos e componentes
 
Algoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registrosAlgoritmos e lp parte 4-vetores matrizes e registros
Algoritmos e lp parte 4-vetores matrizes e registros
 
Livro Linguagem C - Completo
Livro Linguagem C - CompletoLivro Linguagem C - Completo
Livro Linguagem C - Completo
 
Linguagem c parte 2
Linguagem c parte 2Linguagem c parte 2
Linguagem c parte 2
 
Algoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigoAlgoritmos e lp parte3-pseudocódigo
Algoritmos e lp parte3-pseudocódigo
 

Similaire à Linguagem C introdução

Introdução+à+linguagem+c
Introdução+à+linguagem+cIntrodução+à+linguagem+c
Introdução+à+linguagem+cThiago Freitas
 
Curso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação CCurso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação CJoberthSilva
 
Logica5 141120062157-conversion-gate02
Logica5 141120062157-conversion-gate02Logica5 141120062157-conversion-gate02
Logica5 141120062157-conversion-gate02Lucas Antonio
 
Cet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C IntroducaoCet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C Introducaommind
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhanyKaren Costa
 
Apostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-cApostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-cMaicon Rodrigues
 
Aula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdfAula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdfvictorlopes714651
 
Aula01
Aula01Aula01
Aula01vdlos
 
Algoritmos - Aula 10 A - Traducao Do Port Est Para Ling C
Algoritmos - Aula 10 A - Traducao Do Port Est Para Ling CAlgoritmos - Aula 10 A - Traducao Do Port Est Para Ling C
Algoritmos - Aula 10 A - Traducao Do Port Est Para Ling CRodrigo Kiyoshi Saito
 
Introdução ao c++
Introdução ao c++Introdução ao c++
Introdução ao c++Jonas Silva
 
Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...
Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...
Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...Alex Camargo
 
Introdução a linguagem de programação C
Introdução a linguagem de programação CIntrodução a linguagem de programação C
Introdução a linguagem de programação CSchoolByte
 
Introduçãso a linguagem c
Introduçãso a linguagem cIntroduçãso a linguagem c
Introduçãso a linguagem csergiocrespo
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem cvingue
 

Similaire à Linguagem C introdução (20)

Linguagem C clecioamerico
Linguagem C clecioamericoLinguagem C clecioamerico
Linguagem C clecioamerico
 
Introdução+à+linguagem+c
Introdução+à+linguagem+cIntrodução+à+linguagem+c
Introdução+à+linguagem+c
 
Curso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação CCurso Completo de Linguagem de Programação C
Curso Completo de Linguagem de Programação C
 
Logica5 141120062157-conversion-gate02
Logica5 141120062157-conversion-gate02Logica5 141120062157-conversion-gate02
Logica5 141120062157-conversion-gate02
 
Cet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C IntroducaoCet P Sistemas Linguagem C Introducao
Cet P Sistemas Linguagem C Introducao
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhany
 
Apostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-cApostila de-introdução-à-linguagem-c
Apostila de-introdução-à-linguagem-c
 
Aula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdfAula 14 - Entrada e Saida em linguagem C.pdf
Aula 14 - Entrada e Saida em linguagem C.pdf
 
Aula01
Aula01Aula01
Aula01
 
Algoritmos - Aula 10 A - Traducao Do Port Est Para Ling C
Algoritmos - Aula 10 A - Traducao Do Port Est Para Ling CAlgoritmos - Aula 10 A - Traducao Do Port Est Para Ling C
Algoritmos - Aula 10 A - Traducao Do Port Est Para Ling C
 
Aula09 traducaosin110
Aula09 traducaosin110Aula09 traducaosin110
Aula09 traducaosin110
 
Ud2
Ud2Ud2
Ud2
 
Introdução ao c++
Introdução ao c++Introdução ao c++
Introdução ao c++
 
Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...
Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...
Algoritmos e Programação: Apresentação da ferramenta de programação. Comandos...
 
Introdução a linguagem de programação C
Introdução a linguagem de programação CIntrodução a linguagem de programação C
Introdução a linguagem de programação C
 
Introduçãso a linguagem c
Introduçãso a linguagem cIntroduçãso a linguagem c
Introduçãso a linguagem c
 
Infos algoritmo
Infos algoritmoInfos algoritmo
Infos algoritmo
 
Curso de Linguagem C
Curso de Linguagem CCurso de Linguagem C
Curso de Linguagem C
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem c
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem c
 

Plus de Mauro Pereira

Programação Web - CSS
Programação Web - CSSProgramação Web - CSS
Programação Web - CSSMauro Pereira
 
Redes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redesRedes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redesMauro Pereira
 
Exercicio introducao a arquitetura de computadores
Exercicio    introducao a arquitetura de computadoresExercicio    introducao a arquitetura de computadores
Exercicio introducao a arquitetura de computadoresMauro Pereira
 
Introdução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresMauro Pereira
 
Sistemas de Numeracao
Sistemas de NumeracaoSistemas de Numeracao
Sistemas de NumeracaoMauro Pereira
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosMauro Pereira
 
Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1Mauro Pereira
 
Redes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da redeRedes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da redeMauro Pereira
 
Redes 4 endereçamento
Redes 4 endereçamentoRedes 4 endereçamento
Redes 4 endereçamentoMauro Pereira
 
Redes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redesRedes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redesMauro Pereira
 
Redes 1 introducao historico conceitos
Redes 1 introducao historico conceitosRedes 1 introducao historico conceitos
Redes 1 introducao historico conceitosMauro Pereira
 
4.1 softwares e configurações importantes
4.1 softwares e configurações importantes4.1 softwares e configurações importantes
4.1 softwares e configurações importantesMauro Pereira
 
Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2Mauro Pereira
 
Exercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolosExercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolosMauro Pereira
 
Guia prático para criar algoritmos
Guia prático para criar algoritmosGuia prático para criar algoritmos
Guia prático para criar algoritmosMauro Pereira
 
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...Mauro Pereira
 
Guia para traducao algoritmos x l ps
Guia para traducao algoritmos x l psGuia para traducao algoritmos x l ps
Guia para traducao algoritmos x l psMauro Pereira
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 

Plus de Mauro Pereira (20)

Programação Web - CSS
Programação Web - CSSProgramação Web - CSS
Programação Web - CSS
 
Redes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redesRedes 7 ferramentas para montagem de redes
Redes 7 ferramentas para montagem de redes
 
Exercicio introducao a arquitetura de computadores
Exercicio    introducao a arquitetura de computadoresExercicio    introducao a arquitetura de computadores
Exercicio introducao a arquitetura de computadores
 
Introdução à Arquitetura de Computadores
Introdução à Arquitetura de ComputadoresIntrodução à Arquitetura de Computadores
Introdução à Arquitetura de Computadores
 
Sistemas de Numeracao
Sistemas de NumeracaoSistemas de Numeracao
Sistemas de Numeracao
 
Lógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicosLógica binária, potas lógicas e circuitos lógicos
Lógica binária, potas lógicas e circuitos lógicos
 
Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1Trabalho para nota da etapa 2 2017.1
Trabalho para nota da etapa 2 2017.1
 
Redes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da redeRedes 6 equipamentos ativos da rede
Redes 6 equipamentos ativos da rede
 
Redes 4 endereçamento
Redes 4 endereçamentoRedes 4 endereçamento
Redes 4 endereçamento
 
Redes 5 cabeamento
Redes 5 cabeamentoRedes 5 cabeamento
Redes 5 cabeamento
 
Redes 3 protocolos
Redes 3 protocolosRedes 3 protocolos
Redes 3 protocolos
 
Redes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redesRedes 2 padronização e arquitetura de redes
Redes 2 padronização e arquitetura de redes
 
Redes 1 introducao historico conceitos
Redes 1 introducao historico conceitosRedes 1 introducao historico conceitos
Redes 1 introducao historico conceitos
 
4.1 softwares e configurações importantes
4.1 softwares e configurações importantes4.1 softwares e configurações importantes
4.1 softwares e configurações importantes
 
Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2Trabalho para nota da etapa 2 2015.2
Trabalho para nota da etapa 2 2015.2
 
Exercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolosExercicio 1 - conceitos camadas e protocolos
Exercicio 1 - conceitos camadas e protocolos
 
Guia prático para criar algoritmos
Guia prático para criar algoritmosGuia prático para criar algoritmos
Guia prático para criar algoritmos
 
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...Exercicio 2   endereços, dispositivos, internet-intranet-extranet, padroes, c...
Exercicio 2 endereços, dispositivos, internet-intranet-extranet, padroes, c...
 
Guia para traducao algoritmos x l ps
Guia para traducao algoritmos x l psGuia para traducao algoritmos x l ps
Guia para traducao algoritmos x l ps
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 

Linguagem C introdução

  • 1. Curso: Manutenção e Suporte em Informática Disciplina: Linguagem de Programação Professor: Mauro Jansen Linguagem C Introdução, Tipos, variáveis, expressões e estruturas de controle
  • 2. Introdução à linguagem C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 2
  • 3. Histórico Criada na década de 70 por Denis Ritchie (Bell Labs) Objetivo: ser uma linguagem mais fácil que o Assembler mas que permitisse grande controle sobre o hardware, para a programação do sistema Unix Influência das linguagens BCPL e B Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 3
  • 4. Características Genérica: usada para a criação de programas para diversas áreas Ex: aplicativos, sistemas operacionais, automação industrial, engenharia, física, química, etc. Linguagem “mista”: tem características de linguagem de alto e baixo nível Induz a uma boa estruturação de programas Influenciou várias outras linguagens Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 4
  • 5. Características É “case sensitive”: minúsculas e maiúsculas fazem diferença Variável “nome” é diferente de “Nome” É compilada (gera arq.executável) Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 5
  • 6. O pré-processador Parte do compilador C que trata alguns textos (comandos) do código-fonte antes da tradução em código executável Esses comandos são as diretivas do préprocessador. Ex: #define #include Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 6
  • 7. Diretivas do pré-processador #define: define um identificador e uma sequência de caracteres que será substituída pelo identificador no códigofonte. Ex: Em todo o código fonte, PI #define PI 3.1415 será substituído por 3.1415 #include: inclui um cabeçalho ou outro arquivo-fonte no ponto onde está a Inclui o arquivo “stdio.h” diretiva. Ex: (definições padrões para #include <stdio.h> Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 entrada e saída de dados) no programa-fonte 7
  • 8. Estrutura básica de um programa em C #Include <biblioteca1.h> #Include <biblioteca2.h> ... Void main() { <Declaração de variáveis> ... <comandos> ... } Inclusão de arquivo de bibliotecas de comandos Função main(): é obrigatória. É a primeira função chamada quando o programa é iniciado Delimitadores de inicio e fim de bloco de comandos Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 8
  • 9. Comentários Comentários são úteis para documentar o programa, e devem ser sempre usados Existe dois modos: Posição livre: usa-se o comando // Várias linhas: usa-se o comando /* */ Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 9
  • 10. Palavras reservadas São os comandos e funções próprias do vocabulário da linguagem. Ex.: auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, struct, switch, typedef, union, unsigned, void, volatile, while, etc. Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 10
  • 11. Exemplo de programa em C /* Programa: calcular a média entre duas notas Autor...: prof.Mauro */ #Include <stdio.h> Void main() { float nota1,nota2; // declaração de variáveis printf(“Digite a primeira nota: “); scanf(“%f”,&nota1); printf(“Digite a segunda nota: “); scanf(“%f”,&nota2) printf(“A média é: %f”,(nota1+nota2)/2); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 11
  • 12. Comando de saída: printf Sintaxe: printf(<string de controle>,<lista de argumentos>) Mensagem (string) com códigos de controle embutidos na mesma Códigos de controle: Valores que serão substituídos na mensagem, no lugar de cada código de controle iniciado por % Código Formato Código Formato %d Inteiro com sinal %X Hexadecimal %f Float (número real) %o Octal %c Caractere %E Notação científica %s String %p Ponteiro %u Inteiro sem sinal n salta linha Exemplos: printf(“O valor de PI é %f”,3.1415); printf(“Meu nome é %s e eu tenho %d anosn”,”João”,18); Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 12
  • 13. Comando de entrada: scanf Sintaxe: scanf(<string de controle>,<lista de argumentos>) códigos de controle que identificarão o tipo de dado a ser digitado pelo usuário Variável(is) que receberá(ão) os dados, precedida(s) pelo sinal & Exemplo: #Include <stdio.h> Void main() { char c; float n; printf(“Digite uma letra: “); scanf(“%c”,&c); printf(“Digite um valor real: “); scanf(“%f”,&n); printf(“Letra: %c , número: %f”,c,f); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 13
  • 14. Tipos de dados, constantes, variáveis, operadores e expressões em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 14
  • 15. Tipos de dados A linguagem C tem os tipos básicos Char (caractere), Int (inteiro), float (real), double (real) E modificadores de tipo, que vêm antes do tipo e podem ser combinados: Unsigned: sem sinal Signed: com sinal (padrão) Short: menor precisão (padrão) Long: maior precisão Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 15
  • 16. Tipos de dados Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 16
  • 17. Constantes e variáveis Constante: porção de dados que não muda seu valor durante a execução do programa. Exemplos: 23, ‘X’, “Linguagem C”, 1.234 Constantes não precisam de nome, mas podemos nomeá-las usando a diretiva #define. Ex: #define PI 3.1415 Variável: porções de dados que podem mudar seu valor durante a execução do programa Uma variável precisa ter um nome e tipo e precisa ser declarada e inicializada Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 17
  • 18. Constantes de barra invertida São códigos que iniciam com uma barra invertida que representam uma constante tipo caractere dentro de strings, como no comando printf. Veja alguns: Código Significado Muito usado no printf para saltar para próxima linha n Nova linha (new line) ” Aspas ’ Apóstrofo 0 Nulo Barra invertida t Tabulação horizontal a Sinal sonoro (beep) N Constante octal (N é o valor da constante) xN Constante hexadecimal (N é o valor da constante) Prof. Mauro Jansen
  • 19. Regras para nomes de variáveis Começar com letra ou sublinhado (_) Caracteres seguintes podem ser letras, números ou sublinhado Não pode ser palavra reservada ou função Maiúsculas e minúsculas fazem diferença Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 19
  • 20. Declaração e inicialização de variáveis A declaração é feita da seguinte forma: <tipo de dado> <lista de variáveis>; Obs: Na linguagem C não há uma seção específica para declaração de variáveis Exemplos: char ch,letra; long cont; Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 20
  • 21. Declaração e inicialização de variáveis Inicialização: podemos atribuir valor no momento da declaração ou depois, usando o operador de atribuição “=“ : Char ch=‘D’; Int num=123; num=10; Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 21
  • 22. Operadores aritméticos Usados em operações matemáticas Operador Ação + Soma - Subtração ou troca de sinal * Multiplicação / Divisão % Resto da divisão ++ Incrementa valor de uma variável -- Decrementa valor de uma variável += Atribuição com soma -= Atribuição com subtração Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 22
  • 23. Operadores relacionais Usados em comparações entre valores Operador > >= < Significado Maior Maior ou igual Menor <= Menor ou igual == Igual != Diferente Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 23
  • 24. Operadores lógicos Usados em expressões lógicas compostas Operador Significado && Operador E. Retorna verdadeiro se ambos valores forem verdadeiros || Operador OU. Retorna verdadeiro se pelo menos um for verdadeiro ! Operador NÃO. Retorna o contrário do valor informado. Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 24
  • 25. Exemplo com operadores e expressões #Include <stdio.h> Void main() { int a,b,c,d; a=10; b=22; c=30; d=40; printf(“a+b = %d”,a+b); // soma a e b printf(“a-b = %d”,a-b); // subtrai b de a printf(“b%%a = %d”,b%a); // resto da divisão de b por a a++; // incrementa a (mesmo que a=a+1) b--; // decrementa b (mesmo que b=b-1) c+=a; // soma a em c (mesmo que c=c+a) d-=b; // soma e em d (mesmo que d=d+b) printf(“a=%d, b=%d, c=%d, d=%d”,a,b,c,d); } OBS: No próximo bloco veremos exemplos com operadores relacionais Linguagem de Programação e lógicos Prof. Mauro Jansen Linguagem C – parte 1 25
  • 26. Estruturas de controle e fluxo em C Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 26
  • 27. Estrutura condicional if Equivalente em pseudocódigo: se-senão-fimse Sintaxe: If(<condição>) <bloco de comandos> [else <bloco de comandos 2>] Se a condição for verdadeira, executa bloco de comandos 1, senão executa bloco de comandos 2 OBS: Um bloco de comando composto por mais de um comando deve iniciar com { e terminar com } O bloco do else é Linguagem de Programação opcional Prof. Mauro Jansen Linguagem C – parte 1 27
  • 28. Estrutura condicional if (se) Exemplo /* Programa: calcular a média e mostrar situação */ #Include <stdio.h> Void main() { float nota1,nota2,media; // declaração de variáveis printf(“Digite a primeira nota: “); scanf(“%f”,&nota1); printf(“Digite a segunda nota: “); scanf(“%f”,&nota2); media=(nota1+nota2)/2; printf(“A média é: %f n”,media); if(media>=7) printf(“Você está aprovado.n”); else printf(“Você está de recuperação.n”); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 28
  • 29. Estrutura condicional switch-case Equivalente pseudocódigo: escolha Sintaxe: Switch (<variável>) { case <constante1>: <declaração1>; break; case <constante2>: <declaração2>; break; case <constante_n>: <declaraçãoN>; break; default: <declaração default> } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 29
  • 30. Estrutura condicional switch-case Exemplo #Include <stdio.h> void main() { float n1,n2; char op; printf(“Digite um número: “); scanf(“%f”,&n1); printf(“Digite a operação (+,-,* ou /): “); scanf(“%c”,&op); printf(“Digite outro número: “); scanf(“%f”,&n2); switch (op) { case ‘+’: printf(“Soma=%f”,n1+n2); break; case ‘-’: printf(“Soma=%f”,n1-n2); break; case ‘*’: printf(“Soma=%f”,n1*n2); break; case ‘/’: printf(“Soma=%f”,n1/n2); break; default: printf(“Você digitou uma operação inválida!”) } } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 30
  • 31. Operador ternário Operador que permite simplificar tomadas de decisão simples Sintaxe: <expressão1> ? <expressão2> : <expressão3> Exemplo: Equivale a: max=(a>b) ? a : b; If (a>b) max=a; Else max=b; Prof. Mauro Jansen
  • 32. Estrutura de repetição for Equivalente pseudocódigo: para - fimpara É a repetição contada. Sintaxe: for(<inicialização>;<condição>;<incremento>) <bloco de comandos> Inicialização: expressão de inicialização. Ex: n=0 Condição: expressão condição para continuar a repetição. Ex: n<=10 Incremento: expressão de incremento. Ex: n++ Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 32
  • 33. Estrutura de repetição for exemplo: Programa para contar de 1 a 100: #include <stdio.h> { int n; for(n=1 ; n<=100 ; n++) { printf("Contando: %dn",n); } } Prof. Mauro Jansen
  • 34. Estrutura de repetição while Equivalente pseudocódigo: enquanto–faça-fimenquanto Sintaxe: while(<condição>) <bloco de comandos> Inicia e repete o bloco de comandos enquanto a condição for verdadeira É a repetição com teste no início Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 34
  • 35. Estrutura de repetição while Exemplo: Soma quantidade indeterminada de números #include <stdio.h> int main() { float n=1,soma=0; while (n!=0) { printf("Digite um numero (zero=fim):"); scanf("%f",&n); soma+=n; } printf("A soma dos numeros digitados é: %f",soma); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 35
  • 36. Estrutura de repetição do..while Equivalente pseudocódigo: repita - até Sintaxe: do <bloco de comandos> While(<condição>); Executa o bloco de comando e repete enquanto a condição for verdadeira É a repetição com teste no final Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 36
  • 37. Estrutura de repetição do..while Exemplo: Mesmo anterior, agora com do..while: #include <stdio.h> { float n=0,soma=0; do { printf("Digite um numero (zero=fim):"); scanf("%f",&n); soma+=n; } while (n!=0); printf("A soma dos numeros digitados é: %fn",soma); } Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 37
  • 38. Comandos que afetam as estruturas de repetição Comando break: interrompe a repetição, continuando após o bloco de comandos a ser repetido Comando continue: interrompe apenas a repetição atual, voltando ao início do laço Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 38
  • 39. Atividades no DevC++ PRÁTICA, muita PRÁTICA: Testar os exemplos dos slides Testar os exemplos da apostila Resolver exercícios da apostila Resolver as atividades da semana Prof. Mauro Jansen Linguagem de Programação Linguagem C – parte 1 39