A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

LINGUAGEM DE PROGRAMAÇÃO I “C”

Apresentações semelhantes


Apresentação em tema: "LINGUAGEM DE PROGRAMAÇÃO I “C”"— Transcrição da apresentação:

1 LINGUAGEM DE PROGRAMAÇÃO I “C”
Prof. : Marcelo Mendes Portal do aluno MRM Sistemas Linguagem C

2 CARGA HORÁRIA 80 horas Período: 15/08/2014 a 12/08/2014 Linguagem C

3 AVALIAÇÕES 22/08/2014 02/09/2014 10/09/2014 Linguagem C

4 Bibliografia Schildt, H., C Completo e Total, Editora Makron Books do Brasil Editora Ltda, 1997, 827p (livro texto). Evaristo. J., Aprendendo a programar: programando em C, Book Express,2001, 205p Mizrahi, V. V., Treinamento em Linguagem C, Curso Completo, Módulos 1 (241p) e 2 (273p) , Makron Books do Brasil Editora Ltda,1990 Linguagem C

5 Software Dev-C++ Linguagem C

6 LINGUAGEM “C” 1 - INTRODUÇÃO Linguagem C

7 Histórico Linguagem C foi inventada e implementada por Brian W. Kernighan Dennis Ritchie em um DEC-PDP 11 sobre o S.O. Unix na década de 1970; Predecessor Linguagem B, de Ken Thompson, que tinha forte influencia da linguagem BCPL, de Martin Richards; Inicialmente C era fornecida junto com o S.O. Unix, versão 5; 4/7/2017 Linguagem C

8 Histórico Com os microcomputadores apareceram grande número de implementações de C o que gerava discrepâncias; Em 1983 o ANSI (American National Standards Institute) estabeleceu um padrão; 4/7/2017 Linguagem C

9 Características Básicas
Linguagem de Nível Médio, pois combina elementos de linguagens de alto nível (Basic, Pascal) com a funcionalidade da linguagem assembler (instruções de máquinas) Permite manipulação de bits, bytes e endereços; Linguagem Portável (Portabilidade); 4/7/2017 Linguagem C

10 Características Básicas
As primeiras implementações de C não consistiam parâmetros e argumentos, já o padrão ANSI introduziu o conceito de protótipos de funções; Possui 32 palavras chaves (27 originais de seus criadores e 5 do comitê ANSI) (Obs.: Basic possui mais de 100); C é estruturada, apesar de não permitir a criação de funções dentro de funções; 4/7/2017 Linguagem C

11 Características Básicas
Principal componente estrutural de C é a função (blocos de construção); Tem o conceito de bloco de código ou bloco de instruções, que é um grupo de comandos de programa conectado logicamente e tratado como uma unidade; if (a < b) { printf(“valor de A é menor que B”); scanf (“%d”,&numero); } 4/7/2017 Linguagem C

12 Características Básicas
C é uma linguagem para programadores, dá ao programador o que ele quer: poucas restrições, poucas reclamações, estruturas de blocos,funções isoladas e um conjunto de palavras chaves ; Inicialmente C foi usada para S.O, compiladores, interpretadores, planilhas, SGBD, hoje é usada na construção de sistemas comerciais, sistemas de controle, etc. (portabilidade, código compacto e rápido); Atualmente em grande crescimento devido ascensão do S.O Linux; 4/7/2017 Linguagem C

13 Compiladores e Interpretadores
Qualquer linguagem de programação pode ser compilada ou interpretada; Compiladores e interpretadores são programas que operam sobre o código-fonte; Interpretador lê o código-fonte linha por linha e executa-a; Compilador lê todo o código-fonte e converte-o para código-objeto; 4/7/2017 Linguagem C

14 Compiladores e Interpretadores
Código-objeto não é executável, precisa ser utilizado um linkeditor para torná-lo executável; Programas C são criados por intermédio da linkedição de um ou mais códigos-objetos com uma ou mais bibliotecas; Uma biblioteca é um conjunto de códigos-linkeditáveis criados, fornecidos com os compiladores ou adquiridos; 4/7/2017 Linguagem C

15 Compiladores e Interpretadores Ciclo de desenvolvimento
Início Editar código fonte Compilar Erros de compilação? Linkeditar linkedição? Executar programa tempo de Execução? Fim Não Sim 4/7/2017 Linguagem C

16 Estrutura de um Programa C
Declarações globais tipo de retorno main (lista de parâmetros) { comandos; } tipo de retorno função1 (lista de parâmetros) tipo de retorno função2 (lista de parâmetros) 4/7/2017 Linguagem C

17 Ponto e vírgula, Chaves e Comentários
Todos os comandos em C terminam obrigatoriamente com “;”. Chaves (Blocos de Comando) utilizadas para definir um bloco de comando, que são grupos de comandos relacionados que são tratados como uma unidade e estão logicamente conectados. Um bloco começa com uma { e termina com uma } 4/7/2017 Linguagem C

18 Ponto e vírgula, Chaves e Comentários
Um bloco de comando pode ser colocado em qualquer lugar onde seja possível a inserção de um comando. Ex.: #include <stdio.h> #include <conio.h> int main() { int total, a,b; printf ("Digite um numero: "); scanf("%d",&a); printf ("Digite outro numero: "); scanf("%d",&b); printf ("Os numeros digitados foram %d %d",a,b); getch(); //segura tela return 0; } 4/7/2017 Linguagem C

19 Ponto e vírgula, Chaves e Comentários
Começa com o par de caracteres /* e termina com */ . Em C++ e alguns compiladores //; Tudo é ignorado entre os símbolos de comentários; Uma palavra chave não pode conter comentários; Ex.: /* x = x+1 ; printf (“ %d\n”,x); */ soma_total + = valorMensal + /* valor mensal das despesas */ acumuladoAnterior; 4/7/2017 Linguagem C

20 Palavras Chaves auto double int struct break else long switch
case enum * register typedef char extern return union const * float short unsigned continue for signed * void * default goto!! Sizeof volatile* do if static while * ANSI 4/7/2017 Linguagem C

21 Mapa de Memória em C Pilha Heap Variáveis Globais Código do Programa
4/7/2017 Linguagem C

22 Mapa de memória em C Pilha = usada para guardar o endereço de retorno das chamadas de função, argumentos para funções e variáveis locais e estado atual da CPU; Heap = região de memória livre a ser usada pelo programa via funções de alocação dinâmica (Ex.: listas encadeadas e árvores) 4/7/2017 Linguagem C

23 C e C++ C++ é uma versão estendida e melhorada de C, projetada para suportar programação orientada a objetos (OOP - Oriented Object Programming); C++ é um superconjunto de C; Compiladores C++ também são compiladores C padrão ANSI completo; 4/7/2017 Linguagem C

24 Tipos de Dados Tipos Básicos de Dados Tipo Tamanho em bits Faixa
char a 255 int 16(depende) a 32767 float E-38 a 3.4E38 seis dígitos de precisão double E-308 a 1.7E dez dígitos de precisão void 0 sem valor 4/7/2017 Linguagem C

25 Tipos de Dados Modificadores de tipo
signed unsigned long short Ex.: long int 32(bits) faixa ( a ) unsigned char 8 (bits) faixa de 0 a 255 4/7/2017 Linguagem C

26 Tipos de Dados Os modificadores signed, unsigned, short e long podem ser aplicados aos tipos básicos char e int; long pode ser aplicado a double (long float tem o mesmo significado que double); Signed com int é redundante; unsigned com ponto flutuante pode ser permitido mas reduz portabilidade; 4/7/2017 Linguagem C

27 Identificadores Identificadores = nomes de variáveis, funções e outros objetos definidos pelos usuários (não usar caracteres especiais); Primeiro caractere deve ser letra ou um underscore e o restante pode ser letras, números ou undersocores; Correto = xyz, soma_de_tudo Incorreto = 1x, ju!lio 4/7/2017 Linguagem C

28 Identificadores Em C, letras maiúsculas e minúsculas são diferentes;
Identificador não pode ser uma palavra chave de C; Os identificadores devem ser auto explicativos; Sugestão = somaTotalMensal, indicadorDeRepeticao ou soma_total_mensal e indicador_de_repeticao 4/7/2017 Linguagem C

29 Variáveis Posição nomeada de memória, que é usada para guardar um valor que pode ser modificado pelo programa. Todas as variáveis em C devem ser declaradas antes de serem usadas. Forma geral de declaração: tipo lista_de_variáveis; onde tipo = qualquer tipo válido mais qualquer modificador 4/7/2017 Linguagem C

30 Variáveis Lista_de_variáveis = um ou mais nomes de identificadores separados por vírgulas. O nome da variável não tem nenhuma relação com o seu tipo. Ex.: short int controlador, id_processo_1; unsigned int total_funcionarios; double balanco_anual; 4/7/2017 Linguagem C

31 Variáveis Onde declarar: Variáveis Locais (auto - redundante):
interna as funções ou blocos(variáveis locais); parâmetros de funções (parâmetros formais); fora de todas as funções (variáveis globais). Variáveis Locais (auto - redundante): Só podem ser referenciadas dentro das funções ou blocos onde foram declaradas; Só existem enquanto o bloco de código onde estão está sendo executado (armazenadas na pilha); 4/7/2017 Linguagem C

32 Variáveis int calculaQuadrado (void) { int valor; scanf(“%d”, &valor);
return (valor*valor); } int calculaCubo (void) return (valor*valor*valor); 4/7/2017 Linguagem C

33 Variáveis As variáveis locais podem ser declaradas dentro de qualquer bloco e não apenas no início das funções. void CalculaMediaDoisNumeros (void) { int primeiroValor, segundoValor; printf(“entre como primeiro número = “); scanf(“%d”, &primeiroValor); printf (“entre com segundo valor = “); scanf (“%d”,&segundoValor); if (primeiroValor > egundoValor) { int media; /* só é valida dentro do bloco */ media = (primeiroValor+segundoValor)/2; printf (“media = %d \n”, media); } 4/7/2017 Linguagem C

34 Variáveis Parâmetros Formais:
São variáveis que recebem os valores dos argumentos das funções e devem ser do mesmo tipo; Se comportam como qualquer outra variável local dentro da função; int ImprimeQuadrado( int valor) { int numeroPontos; for (numeroPontos=0; numeroPontos <10; numeroPontos++) printf(“.”); printf(“ O quadrado de (%d) é (%d)\n”, valor, valor *valor); return valor*valor;} 4/7/2017 Linguagem C

35 Variáveis Variáveis Globais – não usar( guardadas em área específica memória): São reconhecidas dentro do contexto em que estão declaradas; São declaradas fora das funções; int contador,x; /* declaração de variável global */ int main (void) { contador = 50; x=50; ImprimePontos(); printf (“ Contador (%d) \n”, contador); /* imprime o valor 50 */ getch(); return 0; } int ImprimePontos(void) for (contador =0; contador < 100; contador ++) printf( “%d”,x+contador); } 4/7/2017 Linguagem C

36 Variáveis Const Não podem ser modificadas pelo programa só podem receber um valor inicial; const int contador = 100; Pode ser usado também para proteger os valores passados como parâmetros de uma função; int Produto (const int a, const int b) { a += b; /* não pode ser efetuada - erro de sintaxe */ return (a*b); } Muitas funções da biblioteca C padrão usam const em suas declarações de parâmetros, por exemplo : size_t strlen (const char *str) 4/7/2017 Linguagem C

37 Diretiva include Instrui ao compilador a ler outro arquivo a ser adicionado aquele que contém a diretiva; Nome do arquivo deve estar entre aspas (procura-o inicialmente no diretório atual) ou entre símbolos de menor ou igual (procura-o no padrão do compilador - diretórios de include); #include “meuProjeto.hpp” #include <stdio.h> Recomendação : Aspas para incluir arquivos do projeto; Chaves angulares para incluir os arquivos de cabeçalho padrão; 4/7/2017 Linguagem C

38 Função main() Função main()
Deve existir em algum lugar do programa e marca o ponto de início de execução do mesmo; #include <stdio.h> #include <conio.c> // implementga getch no devC++ int main (void) { printf( “hello este é o meu primeiro programa\n”); getch(); return 0; } 4/7/2017 Linguagem C

39 Função printf() É uma função que imprime um determinado conteúdo na tela; Forma geral int printf (“string de controle”, lista de argumentos); string de controle - contém caracteres que serão exibidos na tela e comandos de formatação; lista de argumentos - contém os valores a serem formatados; Deve haver o mesmo número de argumentos e de comandos de formato (ordem: esquerda->direita) 4/7/2017 Linguagem C

40 Função printf() Códigos Especiais: \n nova linha \r retorno do cursor
\t tabulador \” aspas \\ barra 4/7/2017 Linguagem C

41 Função printf() Códigos de impressão formatada %c Caractere
%d, %i Inteiros com sinal %e Notação científica (e minúsculo) %E Notação científica (E maiúsculo) %f Ponto flutuante %g usa %e ou %f, que for mais curto %G usa %E ou %f, que for mais curto 4/7/2017 Linguagem C

42 Função printf() Códigos de impressão formatada %o Octal %s String
%u Inteiros sem sinal %x Hexadecimal (letras minúsculas) %X Hexadecimal (letras maiúsculas) %% Escreve o símbolo 4/7/2017 Linguagem C

43 Função printf() #include <stdio.h>
#include <conio.c> // implementa getch no devC++ int main (void) { int i; for (i=0; i<80;i+=10) printf(“ %d”,i); ======> printf(“ valor de float(%f) \n”, ); ===> valor de float( ) printf(“string (%s)\n”, “teste de impressão”);===> string( teste de impressão) getch(); return 0; } 4/7/2017 Linguagem C

44 Função printf() Largura mínima de campo
Número colocado entre o símbolo % e o código de formato; 0 antes do especificador de largura mínima coloca 0s a esquerda; Usado para produzir tabelas; double soma; soma = ; printf(“%f\n”, soma); ===> printf(“%8f\n”, soma); ====> printf(“%012f\n”, soma); ====> 4/7/2017 Linguagem C

45 Função printf() Especificador de precisão
Segue o especificador de largura mínima se houver; Consiste em um ponto (.) seguido de um número; Ponto flutuante - especifica o número de casas decimais; %g ou %G - especifica a quantidade de dígitos significativos; 4/7/2017 Linguagem C

46 Função printf() String - determina o comprimento máximo do campo;
Inteiros - identifica o número de dígitos dos números, sendo adicionado zeros para completar; printf (“%.4f\n”, ); ==> printf(“%5.9s\n”,”hello, como vai”); ===> hello com 4/7/2017 Linguagem C

47 Função printf() Justificação Manipulação outros tipos de dados
As saídas são justificadas a direita, para justificar a esquerda colocar o sinal menos após o %; printf(“%-10.2f\n”, ); ===> printf(“%10.2d\n”, ); ====> Manipulação outros tipos de dados l - tipo de dado long ( Ex. %ld, %lf); h - tipo de dado short (Ex. %hu); 4/7/2017 Linguagem C

48 Função scanf() Rotina de entrada pela console;
Próximo do inverso da printf int scanf(“string de controle”, lista de argumentos); string de controle - determina como os valores serão lidos; lista de argumentos - argumentos a serem lidos (passar endereços); 4/7/2017 Linguagem C

49 Função scanf() Especificadores de formato %c lê caracter %d lê inteiro
%e, %f lê ponto flutuante %o lê octal %s lê string %x lê hexadecimal %g lê ponto flutuante %u lê inteiro sem sinal 4/7/2017 Linguagem C

50 Função scanf() int i, j; unsigned soma; scanf (“%d%d”, &i,&j);
#include <stdio.h> #include <conio.c> // implementa getch no devC++ int main (void) { int i, j; unsigned soma; scanf (“%d%d”, &i,&j); scanf (“%u”, &soma); } 4/7/2017 Linguagem C

51 Função clrscr() Esta função efetua a limpeza de toda a tela (ou janela). Esta limpeza consiste em apagar todos os símbolos (ou caracteres) que estavam sendo apresentados em um momento anterior. Com a limpeza de toda a tela o cursor fica posicionado na primeira posição dela, ou seja, no canto superior esquerdo. 4/7/2017 Linguagem C

52 Função clrscr() Exemplo:
#include <conio.c> // implementa clrscr no devC++ #include <stdio.h> int main (void) { float salario; printf(“ Digite o salario do funcionario: “); scanf(“%f “,&salario); clrscr( ); printf(“O salario lido e = %.2f ”, salario); getch(); return 0; } 4/7/2017 Linguagem C

53 Função gotoxy() A execução de um programa elaborado no compilador C abre uma nova janela que possui um tamanho padrão de 24 linhas, por 80 colunas. Colunas (1 => 80) Informe sua idade 25 Sua fase é adulta Linhas (1 => 24) 4/7/2017 Linguagem C

54 Função gotoxy() Esta função possibilita o posicionamento exato do cursor na execução de qualquer programa em C. gotoxy(<coluna> , <linha>); Exemplo: #include <conio.c> // implementa gotoxy no devC++ #include <stdio.h> : gotoxy(24,11); /* posiciona cursor coluna 24 linha 11 */ printf("Aula de Laboratorio deProgramacao"); 4/7/2017 Linguagem C


Carregar ppt "LINGUAGEM DE PROGRAMAÇÃO I “C”"

Apresentações semelhantes


Anúncios Google