Buscar

UNB_ECP_AED02_Linguagem_C

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Análise e Estrutura de Dados - EDD
Linguagem de Programação C 
Parte 1
Prof. Thiago Araújo
Introdução à Programação
Unidade de Entrada
Unidade de Saída
Unidade de Processamento 
Central
Memória
Linguagem de Máquina
Linguagens de 
Comunicação
A linguagem de 
comunicação entre as 
unidades
O código ASCII
ASCII
Programas de Computadores
Um programa de computador é, na realidade, um 
conjunto de instruções que podem ser executadas pelo 
computador, de tal forma que a execução de 
subconjuntos destas instruções permitem a realização 
de ações mais genéricas. 
Lógica de Programação
A Lógica de Programação pode ser entendida 
como o conjunto de raciocínios utilizados para 
o desenvolvimento de algoritmos (e, portanto, 
de programas). 
Lógica de Programação
Um senhor, infelizmente bastante gordo, está numa das margens de um rio com 
uma raposa, uma dúzia de galinhas e um saco de milho. O senhor pretende 
atravessar o rio com suas cargas, num barco a remo que só comporta o senhor e 
uma das cargas. Evidentemente, o senhor não pode deixar em uma das margens, 
sozinhos, a raposa e a galinha, nem a galinha e o milho. A questão é escrever um 
algoritmo que oriente o senhor a realizar o seu intento. Naturalmente, na primeira 
viagem, ele não pode levar a raposa (neste caso, as galinhas comeriam o milho), 
nem o milho (caso em que a raposa devoraria as galinhas). Logo, na primeira 
viagem ele deve levar as galinhas. Como ele estará presente na chegada, na 
segunda viagem ele pode levar a raposa ou o milho. Mas, e a volta para apanhar 
terceira carga? A solução é ele voltar com as galinhas e, aí, atravessar o milho, já 
que não há problema em que a raposa e o milho fiquem juntos. Escrevendo as 
instruções na sequência em que elas devem ser executadas, teremos o seguinte 
algoritmo. 
Linguagem de alto nível
Linguagem mais próxima ao humano
Interpretador
Compilador
Linguagem C
Variável - é uma posição de memória cujo 
conteúdo pode ser modificado durante a 
execução de um programa.
•Identificador - A referência a uma variável 
no programa é feita através do seu 
identificador
Palavras Reservadas em C
Tipo de Dado
•O tipo de dado associado a uma variável é o conjunto dos 
valores que podem ser nela armazenados. A linguagem C dispõe 
dos tipos de dados discriminados na tabela a seguir.
Declaração de variáveis
int Quant;
float Num, Soma, Media;
•A ideia é que Quant seja utilizada para 
armazenar a quantidade de números; Num
para armazenar os números (um de cada vez); 
Soma para armazenar a soma dos números; e 
Media para armazenar a média procurada.
Constantes
const float NumAvogadro = 6.023E+23;
•O que caracteriza uma constante (e daí sua 
denominação, emprestada da matemática) é 
o fato de que o conteúdo de uma constante 
não pode ser modificado durante a 
execução do programa
Operadores
Operadores Aritméticos
Expressões Lógicas
Comandos de Entrada e Saída
•Biblioteca <stdio.h> (printf() e scanf())
•printf(“MENSAGEM”, ARGUMENTOS);
MENSAGEM = Mensagens que serão 
exibidas
ARGUMENTOS = Podem conter 
identificadores de variáveis, expressões 
aritméticas ou lógicas e valores constantes.
Comandos de Entrada e Saída
Primeiro programa em C
Impressões de Códigos Especiais
Exemplo:
Ponto Flutuante
Leitura de Dados
scanf(“Tipo de Dado”, “Argumento”) – nos 
permite ler dados a partir da entra padrão do 
teclado.
•%d indicativo de tipo de dado, nesse caso inteiro
•&m operador utilizado para pegar a posição de 
memória da variável m.
Exemplo: 
Exemplo
If/else
Estrutura condicional para fluxos alternativos 
dentro de um sistema, através de uma 
decisão que será testada através de uma 
expressão lógica.
Exemplo IF/ELSE
Switch
Utilizada quando um variável pode ser igual 
a diferentes valores, fazendo o teste sobre 
ela de forma mais simples e legível.
Switch
While
Uma maneira possível de executar um laço é 
utilizando o comando while. Ele permite que o 
código fique sendo executado numa mesma 
parte do programa de acordo com uma 
determinada condição.
- ele é executado desde que a condição seja 
verdadeira
- testa a condição antes de executar o laço
Vetores
Em diversas situações os tipos básicos de dados (int,
float, char, ....) não são suficientes para representar a
informação que se deseja armazenar. 
Exemplo, uma palavra: “AULA”.
Existe a possibilidade de construção de novos tipos 
de dados a partir da composição (ou abstração) de 
tipos de dados primitivos. Esses novos tipos têm um 
formato denominado ESTRUTURA DE DADOS, que 
define como os tipos primitivos estão organizados.
Vetores
Em diversas situações os tipos básicos de dados (int,
float, char, ....) não são suficientes para representar a
informação que se deseja armazenar. 
Exemplo, uma palavra: “AULA”.
Existe a possibilidade de construção de novos tipos 
de dados a partir da composição (ou abstração) de 
tipos de dados primitivos. Esses novos tipos têm um 
formato denominado ESTRUTURA DE DADOS, que 
define como os tipos primitivos estão organizados.
Vetores
Em diversas situações os tipos básicos de dados (int,
float, char, ....) não são suficientes para representar a
informação que se deseja armazenar. 
Exemplo, uma palavra: “AULA”.
Existe a possibilidade de construção de novos tipos 
de dados a partir da composição (ou abstração) de 
tipos de dados primitivos. Esses novos tipos têm um 
formato denominado ESTRUTURA DE DADOS, que 
define como os tipos primitivos estão organizados.
Vetores
Em diversas situações os tipos básicos de dados (int,
float, char, ....) não são suficientes para representar a
informação que se deseja armazenar. 
Exemplo, uma palavra: “AULA”.
Existe a possibilidade de construção de novos tipos 
de dados a partir da composição (ou abstração) de 
tipos de dados primitivos. Esses novos tipos têm um 
formato denominado ESTRUTURA DE DADOS, que 
define como os tipos primitivos estão organizados.
Importante!!
•Os vetores não são inicializados 
automaticamente.
•Declarar mais elementos do que defino 
causa erro de sintaxe.
•Omitindo o tamanho do vetor ele terá o 
mesmo número de elementos digitados.
Matrizes (Vetores Multidimensionais)
•Como os vetores, as matrizes são estruturas de 
dados homogêneas. Podem ser construídas dos 
diversos tipos básicos primitivos (float, int, char).
•A Principal diferença em relação aos vetores 
(unidimensionais): possui uma ou mais dimensões 
adicionais, mas na maioria dos casos: utiliza-se 
matrizes bidimensionais.
•São utilizadas quando os dados homogêneos 
necessitam de uma estruturação com mais de uma 
dimensão.
Matrizes
Matrizes
Importante!!
•Os vetores não são inicializados 
automaticamente.
•Declarar mais elementos do que defino 
causa erro de sintaxe.
•Omitindo o tamanho do vetor ele terá o 
mesmo número de elementos digitados.
Vetores de Caractere
•Uma cadeia de caracteres é 
uma sequência de caracteres
(char) justapostos e são 
fundamentais no 
desenvolvimento de programas 
computacionais.
•Entrada/Saída de caracteres 
em C:
•getchar();
•putchar();
Vetores de Caractere
•Uma cadeia de caracteres é 
uma sequência de caracteres
(char) justapostos e são 
fundamentais no 
desenvolvimento de programas 
computacionais.
•Entrada/Saída de caracteres 
em C:
•getchar();
•putchar();
Vetores de Caractere
•Uma cadeia de caracteres é 
uma sequência de caracteres
(char) justapostos e são 
fundamentaisno 
desenvolvimento de programas 
computacionais.
•Entrada/Saída de caracteres 
em C:
•getchar();
•putchar();
Manipulando “Strings”
•gets(s): lê a string s a partir do teclado;
•puts(s): imprime uma string na tela seguida de nova linha.
Perguntas
Exercícios
1.Fazer um programa que leia o nome do 
usuário e o número de matricula e imprima.
2.Desenvolva um programa para ler e somar 
duas matrizes quadradas de dimensão 2. 
Imprima o resultado da soma.
3.Crie um programa em C que peça 10 
números, armazene eles em um vetor e diga 
qual elemento é o maior, qual é o menor e que 
seus valores.
IDE
•Windows: Bloodshed 
Dev C/C++
•Linux:
•Geany
Ambos:
•Netbeans, Eclipse, 
Sublime.
Perguntas
Exercícios
1.Faça um programa para ler dois números reais , faça a divisão entre o 
primeiro pelo segundo.(lembre-se não existe divisão por zero).
2.Faça um programa para ler dois números reais e verificar se ambos são 
maiores que zero. Caso positivo, informar “Valores são válidos”. Caso 
contrário, informar “Valores inválidos”.
3.Calculadora: Fazer um algoritmo para ler dois números e um dos 
símbolos das operações: +, -, *, /. Imprimir o resultado da operação 
efetuada sobre os números lidos.
4.Fazer um programa que leia o nome do usuário e o número de matricula 
e imprima.
5.Desenvolva um programa para ler e somar duas matrizes quadradas de 
dimensão 2. Imprima o resultado da soma.
6.Crie um programa em C que peça 10 números, armazene eles em um 
vetor e diga qual elemento é o maior, qual é o menor e que seus valores.

Outros materiais