Linguagem C Marco Reis.

Slides:



Advertisements
Apresentações semelhantes
INTRODUÇÃO A COMPUTAÇÃO ENG. CIVIL
Advertisements

Estruturas de Controle
Estruturas de Repetição
Linguagem C Marco Antonio – Julho/2009. Instalação A IDE que será utilizada é o Eclipse, com plugin para C/C++. Descompacte no diretório.
Manipulação de Strings Marco Reis. Novo arquivo Adicione ManipulacaoDeStrings.c ao projeto. Cada projeto pode ter apenas um método main. Como outros programas.
LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INSTRUÇÕES DE CONTROLE – PARTE I Prof. Thiago Pereira Rique
Programação para Engenharia I
LINGUAGEM C.
Linguagem C Estruturas de Controle de Fluxos
LPG - I: Ponteiros e Vetores/Matrizes UDESC - SBS
LINGUAGEM ESTRUTURADA TURBO C
Universidade Federal do Espírito Santo
LINGUAGEM C Centro Federal de Educação Tecnológica da Paraíba Coordenação de Informática Professor: Lafayette B. Melo.
Vetores, Matrizes e Funções
Estruturas de Dados Homogêneas Unidimensionais – Vetores e Strings
Slides Prof. Jean SIMÃO Revisão: Prof. João FABRO
Linguagem C Estruturas de Seleção.
Estruturas de Dados Homogêneas Multidimensionais – Matrizes
Matrizes e Funções - Continuação
Fundamentos de Programação 1
Estruturas de Decisão Permitir testes para decidir acções alternativas: if if - else switch (?:) Operador Condicional MF.
1MF. Vectores Tipo de dado usado para representar um CONJUNTO de dados do um mesmo tipo Estrutura de dados homogénea unidimensional Ex: Ler a nota de 3.
Revisão da Linguagem C.
Professor: Juliano Lucas Gonçalves
Introdução a Computação e Cálculo Numérico
Unidade I: “Dê um mergulho rápido”
Ameliara Freire O comando de entrada de dados é utilizado quando desejamos fornecer um valor para um nosso programa. Os dispositivos.
PROGRAMAÇÃO ESTRUTURADA II
PROGRAMAÇÃO ESTRUTURADA II
Linguagem de Programação I Parte II
FTIN Formação Técnica em Informática
CADEIA DE CARACTERES (Strings)
Linguagens de programação
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Seminário 1: Revisão de C
Estruturas de Dados Módulo 3 – Controle de Fluxo
Prof. Ricardo Santos PONTEIROS
Programação de Computadores
Computação Eletrônica
Aula 10 - Armazenamento de Dados em Registros
Aula 6 - Estruturas de Controle
Algoritmo e Programação
Técnicas de Desenvolvimento de Programas
Vetor Prof. Guilherme Baião S. Silva Adaptações:
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Algoritmos - Profa. Alciléia1 Profa. Maria Alciléia Alves Rocha Funções em C 2011.
PROGRAMAÇÃO ou LINGUAGEM C?
Introdução à Linguagem C
Algoritmos e Estrutura de Dados I Jean Carlo Mendes
Wellington Felix.  Criada por Brian Kernighan e Denis Ritchie, na década de 1970, para uso em um computador DEC PDP-11 em Unix  C++ é uma extensão da.
PCI- Estrutura Condicional Profa. Mercedes Gonzales Márquez.
Revisão Luis Antonio Tavares
Linguagem C - Funções Automação Industrial Informática Básica
Aula Prática 1 Monitoria IP/CC (~if669) (A partir do slide elaborado por Luís Gabriel)
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação Versão: _01.
Introdução a Programação
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
Algoritmo e Programação
Programação Computacional Aula 9: Meu primeiro programa em C
Profa. Maria Augusta Constante Puget
Profa. Maria Augusta Constante Puget
PROGRAMAÇÃO II – PARTE 6 Profa. Maria Augusta Constante Puget.
Programação para Web I AULA 4 ESTRUTURAS DE CONTROLE.
Linguagem de Programação 11 Estruturas de Decisão e Repetição. Prof. Luiz José Hoffmann Filho
Linguagem de Programação
PCI- Vetores Profa. Mercedes Gonzales Márquez. Aula 5 - VetoresAlgoritmos e Estruturas de Dados I Sequência de valores todos do mesmo tipo Nome único.
Computação – Informática Aula N. 05 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Matrizes em C”
1 Aula 07 Strings Prof. Filipe Mutz. 2 Em nossos programas ainda não vimos como armazenar palavras e textos, e eles são muito importantes! Exemplos: Programas.
Ambientação com a Sintaxe de Java: parte 2 Prof. Gustavo Wagner Slides Originais: Prof. Tiago Massoni Desenvolvimento de Sistemas FATEC-PB  Centro de.
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Transcrição da apresentação:

Linguagem C Marco Reis

Processo de desenvolvimento Escrever código-fonte. Compilar. Executar. Editar o fonte e adicionar os novos blocos de código. Testar vários valores diferentes (sempre) e anotar suas observações com comentários (//).

Código-fonte Vamos começar: crie sempre um projeto no Dev (CursoDeLinguagemC). Adicione um arquivo chamado Programa1.c

Método main Todo programa deve ter um método main. Edite Programa1.c da seguinte maneira: int main(){ return 0; }

Variáveis Principais tipos de dados: int valorInteiro = 100; long valorLong = 99999; float valorFloat = 99999.9; double valorDouble = 99999.8; char letra = 'a'; char palavra[10] = “Marco”;

Ou seja... #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { // int valorInteiro = 10; long valorLong = 99999; float valorFloat = 10.9; double valorDouble = 99999.8; char letra = 'a'; char palavra[20] = "Marco Antonio"; return 0; }

Identação Deve ser feita com dois ou quatro espaços a partir da esquerda.

Operações Representadas pelos caracteres “+”, “-”, “*”, “/”, “%”, “++” e “--”. // int outroValorInteiro = 20; int resultadoInteiro = valorInteiro + outroValorInteiro; float resultadoComPrecisao = valorFloat / 3;

Funções Básicas da Linguagem Impressão de dados na saída: // printf("Alguma mensagem.\n"); printf("Valores: %d.\n", valorInteiro); printf("Valores: %d, %c, %f.\n", valorInteiro, letra, valorFloat); Leitura de dados: scanf("%c", letra); scanf("%d", valorInteiro); scanf("%s", palavra); Dependendo da versão do compilador, utilize o operador de endereço de memória, por exemplo: &letra ou &valorInteiro.

Formatos Pesquise os demais formatos da linguagem.

Estrutura Condicional Atenção especial para a identação. // if (valorInteiro < 10) { printf("Menor que 10\n"); } if (valorInteiro < 10 && valorInteiro > 5) { printf("Menor que 10 e maior que 5\n"); } else { printf("Nao satisfaz a(s) condicao(oes)\n"); if (letra == 'a') { printf("Letra 'a'\n"); printf("Nao eh a letra 'a'\n");

for O laço for tem três parâmetros – início, condição de saída e incremento. Todos os parâmetros são opcionais. // int i; for (i = 0; i < 10; i++) { printf("Valor do i:%d\n", i); }

for aninhado Analise com cuidado a saída deste programa. Modifique os valores e veja o que se passa. // for (i = 0; i < 100; i++) { printf("Valor de i: %d\n", i); printf("-------------------\n"); for (j = 0; j < 10; j++) { printf("Valor de j: %d\n", j); } printf("xxxxxxxxxxxxx\n");

while Funciona exatamente como o for, mas a inicialização e incremento ficam em pontos diferentes. // int j = 0; while (j < 10) { printf("Valor do J:%d\n", j); j++; }

break Edite o laço for e acrescente o break. Analise o resultado. // int i; for (i = 0; i < 10; i++) { if(i == 5) { break; } printf("Valor do i:%d\n", i);

continue Edite o laço for e acrescente o continue. Analise o resultado. // int i; for (i = 0; i < 10; i++) { if(i == 5) { continue; } printf("Valor do i:%d\n", i);

Matrizes As matrizes devem ser utilizadas associadas em um loop. A expressão sizeof(valores) / 4 retorna o tamanho do array. Este tipo de estrutura ajuda na portabilidade da aplicação. // int valores[5]; srand(time(0)); for (i = 0; i < sizeof(valores) / 4; i++) { valores[i] = rand() % 10; } printf("Valor aleatorio da posicao %d: %d\n", i, valores[i]);

Atividade 1 Adicione o arquivo Atividades1.c ao projeto. Crie o método main Implemente os seguintes blocos de código (cada item é um bloco): Crie as variáveis nome, idade, altura, peso, sexo (m/f), ehEstudante (1/0). Atribua valores hipotéticos. Imprima os valores dessas variáveis. Imprima se a idade é par ou ímpar. Imprima o sexo por extenso (masculino/feminino). Imprima o IMC. Imprima “Voce eh alto” se maior que 1.80, “Voce eh mediano” entre 1.79 / 1.65 e “Voce esta abaixo da media” se não estiver nos intervalos. Imprima o nome mais “, voce tem que estudar mais” se for estudante e o nome mais “Voce tem que estudar muito mais” se não for estudante. Imprima “Maior de idade” ou “Menor de idade”. Imprima “O senhor tem {idade} anos” ou “A senhora tem {idade} anos”.

Atividade 2 Atividade2.c (todas as atividades com loop devem ser feitas com for e while). Crie um loop que vá de 1 a 100 e imprima o índice. Crie um loop que vá de 10 a 9, imprima o índice. Crie um loop de 1 a 10 e imprima o índice. Páre o loop quando chegar em 5. Crie um loop de 20 a 10 e imprima o índice. Pule o valor 12. Crie um loop de 1 a 100 que só imprima quando o índice for 1, 10, 20, 30. Crie um loop de 1 a 100 que só imprima quando o índice for par. Crie um loop de 1 a 100 que só imprima quando o índice for múltiplo de 5. Crie um loop de 1 a 100 que durma por ¼ de segundo. Crie um loop de 1 a 100. Dentro deste, crie outro de 1 a 10. Imprima se o índice é par ou ímpar. Formate a mensagem para que seja completa e clara. Crie um loop de 1 a 10 e dentro outro de 10 a 1. Imprima somente se os índices forem iguais. Crie um loop infinito que mostre a hora atual do sistema. Formatada, claro.

Atividade 3 Atividade3.c: Crie um programa com as seguintes variáveis: nomeDoAluno, disciplina e nota. Solicite que o usuário informe os valores. Imprima todos os valores informados pelo usuário com o cabeçalho “Notas do aluno {nome}”. Imprima se o aluno foi aprovado ou reprovado na disciplina. Se o aluno for reprovado pergunte se ele deseja uma segunda chance (s/n). Caso positivo, solicite que o usuário informe a nova nota e substitua a nota anterior. Imprima de novo os dados corrigidos com o cabeçalho “Notas do aluno {nome} após a recuperação”. Pergunte ao usuário se ele deseja incluir as notas para outro aluno (s/n). caso negativo, informe que o programa acabou. Caso positivo, reinicie o processo.

Desafio Altere o programa anterior. O usuário deverá obrigatoriamente informar as notas de 5 alunos. Depois de informar as notas individuais de cada um dos alunos, mostre um relatório sobre a nota da turma. Média dos alunos, maior nota, menor nota. Pergunte ao usuário se deseja informar as notas para outra disciplina. Informe a nota média dos alunos em todas as disciplinas.

Atividade 4 Pesquise bibliotecas gráficas disponíveis para C. Indique o fabricante, mostre screenshots e discorra sobre as principais vantagens.

Atividade 5 Crie um jogo de loteria. O usuário deve informar dois números inteiros menores que 10. O programa deve gerar dois números aleatórios menores que 10. Informe ao usuário se ele ganhou. Desafio: Atualize o jogo para que tenha 5 números sorteados. O usuário irá, então, informar 5 números. Informe quantos e quais números o usuário acertou.

Atividade 6 Faça um programa que gere as letras do alfabeto aleatoriamente. O programa irá mostrar a letra gerada e solicita ao usuário que digite esta letra. Quando o usuário informar uma letra errada o programa se encerra e mostra uma mensagem. Desafio: Verificar quanto tempo o usuário demorou para digitar a letra. Se o tempo for maior que 1 segundo, ele perde. Desafio master: Depois da 10a. letra diminuir o tempo gradativamente.

Observações gerais Resolva UM problema de cada vez. O código deve estar identado. Código não identado está automaticamente errado. Todos os blocos devem estar organizados e separados por uma linha (ao menos) comentada. As entradas de usuário devem ter uma instrução clara do que o usuário pode ou não digitar. Todas as mensagens devem ser claras. Atenção especial aos padrões. Programação pode ser mais simples se observarmos os padrões já definidos.