Buscar

Linguagem C - Introdução

Prévia do material em texto

Informática Aplicada 
Aula 1 – Introdução à Linguagem C 
Profª Náthalee Cavalcanti de Almeida 
Email: nathalee.almeida@ufersa.edu.br 
27/11/2013 
• Breve Histórico da Linguagem C 
• Introdução à Linguagem 
• Linguagem de Alto Nível 
• Linguagem de Baixo Nível 
• Linguagem Estruturada 
• Programação em C 
• Estrutura de um Programa em C 
• Resumo da Aula 
 
 
Agenda 
Histórico da Linguagem C 
 
• Criada em 1972 nos Bell Telephone Laboratories 
por Dennis Ritchie com a finalidade de permitir a 
escrita de um SO (o Unix), utilizando uma 
linguagem de relativo alto nível; 
 
• “C” evolução de outra linguagem de programação 
desenvolvida por Ken Thompson nos Laboratórios 
Bell, chamada B. 
 
 
. 
 
 
 
 
 
 
Por que programar em C? 
 
• COBOL – Processamento de registros; 
• PASCAL – Ensino das Técnicas de Programação; 
• FORTRAN – Cálculo Científico 
• LISP e PROLOG – áreas de Inteligência Artificial. 
• E a linguagem C? 
 
. 
 
 
 
 
 
 
Por que programar em C? 
 
 Qual a área de desenvolvimento ela se destina? 
• Nenhuma em particular; 
• Propósito geral 
 - adapta-se ao desenvolvimento de qualquer 
projeto, como SOs, interfaces gráficas, 
processamentos de registros, escrever compiladores 
de outras linguagens. 
 
 
 
 
 
Por que programar em C? 
 
1. Linguagem portável. 
2. Utiliza o conceito de bibliotecas padronizadas. 
3. Grande quantidade de operadores. 
4. Sintaxe relativamente simples e elegante 
5. Maior facilidade de acesso aos equipamentos de 
hardware. 
 
 
Por que programar em C? 
 
6. Facilidade com que o código das aplicações 
podem ser otimizadas. 
7. Programas em C são compilados, gerando 
programas executáveis computacionalmente 
eficientes. 
8. O compilador C gera códigos mais enxutos e 
velozes do que muitas outras linguagens. 
 
 
 
Introdução à Linguagem C 
 
 A linguagem C alia características de baixo 
nível (linguagem próxima a de máquina) com 
características de alto nível (linguagem 
próxima a do ser humano) 
Linguagem de Alto Nível 
 
 Capacidade da linguagem em compreender 
instruções escritas em “dialetos” próximos do 
inglês. 
 
 Contém termos próximos da nossa linguagem 
cotidiana, sendo assim mais simples de ser 
compreendida. 
 
 Necessitam de compiladores e/ou 
interpretadores para gerar instruções 
compreensíveis pelo computador. 
Linguagem de Alto Nível 
  Interpretadores fazem a análise de cada instrução do 
programa fonte, uma por uma, executando-as uma após a 
outra. 
 
 Os compiladores fazem a tradução de todas as instruções 
do programa fonte para uma outra linguagem. 
 
 Ex: da linguagem C para código de máquina, gerando um 
programa executável. 
 
A linguagem C e pascal são exemplos de linguagens 
compiladas. 
Linguagem de Baixo Nível 
 
 
 são aquelas que se aproximam do assembly, 
que é a linguagem própria da máquina, 
compostas por instruções binárias e outras 
instruções quase incompreensíveis para o ser 
humano. 
 
 
Linguagem Estruturada 
 
 Estruturas de controle básicas: 
 
-Sequência, Seleção e Repetição 
 
 
 Os programas construídos a partir da 
combinação dessas estruturas básicas são 
chamados de programas estruturados. 
Programação em C 
 
 C é “sensível a caixa alta ou baixa (case 
sensitive), ou seja, faz diferença entre o 
maiúsculo e o minúsculo”. 
 
Exemplo: 
 num <> NUM<> Num<> NuM 
 for <>FOR 
 
Programas em C 
 
. 
 
 
 Um programa de computador é um conjunto de 
instruções que representa um algoritmo para a 
resolução de algum problema. 
 
 Essas instruções são escritas através de um 
conjunto de códigos (símbolos e palavras). 
 
 Esse conjunto de códigos possui regras de 
estruturação lógica e sintática próprias. 
 
 Dizemos que esse conjunto de símbolos e regras 
forma uma linguagem de programação. 
Programas em C 
 
. 
 
 
Programas em C 
 
. 
 
 
 Código-fonte: texto do programa que os usuários 
escrevem . Esse código é a entrada do compilador C. 
 
 Código-objeto: é a tradução do código-fonte do 
programa em um código de máquina para que o 
computador possa ler e executar. 
 
O linkeditor é um programa que une funções 
compiladas separadamente em um programa, 
combinando as funções da biblioteca C com o 
programa escrito. A sua entrada é o código objeto e a 
sua saída é um programa executável. 
 
Estrutura de um Programa em C 
 
. 
 
 
1. main () 
2. { 
3. } 
O que esse programa faz? 
Estrutura de um Programa em C 
 
. 
 
 
main () 
 local onde começam todos os programas em 
C; 
 chamada de função principal; 
 a palavra main seguida de parêntesis, indica 
uma função. 
 
{ }  indica o local onde devem ser escritas as 
instruções. 
 
Lembrando que C é Case Sensitive!!! 
 
 
Estrutura de um Programa em C 
 
. 
 
 
1. #include <stdio.h> 
2. main () 
3. { 
4. printf (“Hello World”); 
5. } 
 
Saída do programa: 
 
 Hello World 
Estrutura de um Programa em C 
 
. 
 
 
1. #include <stdio.h> 
2. main () 
3. { 
4. printf (“Hello World”); 
5. } 
 
printf () função que permite a escrita na tela, 
printf = print + formatado 
 
*Nessa função passamos a string (conjunto de 
caracteres) que queremos que seja escrita. 
Estrutura de um Programa em C 
 
. 
 
 
 Cada instrução deve ser terminada com um 
ponto-e-vírgula ( ; ) 
 
Aspas duplas ( “ ) não pode ser substituído por 
aspas simples („) ou por duas aspas simples („‟) 
 
 Para ter acesso a um conjunto de funções, 
como por exemplo o printf , temos que incluir a 
sua definição no programa 
 # include <stdio.h> (standard input/output 
header) 
Estrutura de um Programa em C 
 
. 
 
 
1. #include <stdio.h> 
 
2. main () 
 
3. { 
 
4. printf (“Hello World”); 
 
5. } 
 
Inclui também as funções de E/S 
O Programa começa aqui 
Início do Bloco de Instruções 
Escrita da string usando a 
função printf 
Fim do Bloco de Instruções ( e fim 
do programa) 
Estrutura de um Programa em C 
 
. 
 
 
#include <stdio.h> 
main ( ) 
{ 
 printf (“Hello”); 
 printf (“ “); 
 printf (“World”); 
} 
#include <stdio.h> 
main ( ) { 
 printf ( 
“Hello” 
); 
 printf ( “ “ ) 
;printf ( “World” ); 
} 
 Existe um pequeno problema? Qual? 
Estrutura de um Programa em C 
 
. 
 
 
1: #include <stdio.h> 
2: main ( ) 
3: { 
4: printf (“Hello World\n”); 
5: } 
Como é que C resolve esse problema? 
Estrutura de um Programa em C 
 
. 
 
 
printf (“Hello \n\nWor\nld\n”); 
 
Qual a saída desse programa? 
 
Hello 
 
Wor 
ld 
 
Exercício 
 
. 
 
 
Escreva um programa em C que 
tenha a seguinte saída: 
 
C 
é a melhor 
linguagem 
 
 
Exercício 
 
. 
 
 
Resposta: 
 
1: #include <stdio.h> 
2: main ( ) 
3: { 
4: printf (“C\n”); 
5: printf (“ é a melhor\n”); 
6: printf (“Linguagem\n”); 
7: } 
 
 
Exercício 
 
. 
 
 
Resposta: 
 
1: #include <stdio.h> 
2: main ( ) 
3: { 
4: printf (“C\n é a melhor \nlinguagem\n”); 
5:} 
 
 
Lista de Caracteres Especiais 
 
. 
 
 
 
 
 \7 sinal sonoro do computador 
 \a sinal sonoro do computador 
 \b Backspace 
 \n New Line (mudança de linha) 
 \\ Caractere \ 
 \‟ Caractere „ (aspas simples) 
 \” Caractere “ (aspas duplas) 
Comentários em C 
 
. 
 
 
 
 
 Não são interpretados pelo compilador; 
 
 São simplesmente ignorados pelo compilador; 
 
 Um comentário em C é qualquer conjunto de 
caracteres compreendido entre os sinais /* e */. 
 
 Não tem nenhuma interferência num 
programa, servem apenas para documentação do 
código. 
 
Comentários 
 
. 
 
 
 
 
Objetivo: 
 
Facilitar a vida do programador que tem que 
olhar para um determinado projeto em C, 
evitando que este tenha que perceber todo o 
código para saber o que determinado conjunto de 
instruções faz. 
 
 
Comentários 
 
. 
 
 
 
 
Exemplo do cabeçalho de um programa: 
 
/* PROG01.C:*/ 
/* AUTOR: Náthalee*/ 
/* DATA: 06/03/2013*/ 
--------------------------------------------------------- 
/* PROG01.C: 
* AUTOR: Náthalee 
* DATA: 06/03/2013 
*/ 
 
 
 
 
Comentários 
 
. 
 
 
 
 
 O compilador ignora tudo que tiver entre /* e 
*/. 
 
Exceto se esses caracteres tiverem dentro de 
strings. 
 
Ex: 
 
printf (“Um comentário em C começa com /* e 
termina com */ \n”); 
 
 
Comentários 
 
. 
 
 
 
 
 Os compiladores não permitem, em geral, a 
existência de comentários dentro de 
comentários: 
 
Ex: 
/* início do comentário n°1 
 /* printf (“Olá\n”); Comentário Interno*/ 
*/ 
 
 
Resumo da aula 
. 
 
 
 
 
 Em C, um programa começa com a função 
main(). 
 O código a executar é colocado entre {}. 
 Um Bloco é formado por qualquer conjunto de 
instruções entre {}. 
 Cada instrução deve ser seguida de ponto-e-
vírgula (;). 
 A disposição do código é arbitrária e depende 
das preferências de cada programador. 
 C faz distinção entre minúsculas e maiúsculas 
– diz-se que é Case Sensitive. 
 
 
 
Resumo da aula 
. 
 
 
 
 
 As strings em C são delimitadas pelo caractere 
aspas “. 
 
 Para escrever uma mensagem na tela usa-se a 
função printf(). 
 
 A função printf não faz parte da linguagem C. 
Pertence à sua extensa biblioteca de funções. 
 
 
Resumo da aula 
. 
 
 
 
 
 Para termos acesso a esta e a outras funções de 
entrada/saída devemos incluir nos nossos 
programas o arquivo stdio.h através da diretiva 
ao pré-processador #include <stdio.h>. 
 
 As linhas começadas por # (#include, #define, 
etc.) não são C, mas sim diretivas ao pré-
processador. Por isso não devem ser seguidas de 
ponto-e-vírgulas 
Resumo da aula 
. 
 
 
 
 
 A representação de caracteres especiais inicia-
se com o \ , como por exemplo \n. 
 
 Os comentários são escritos entre /* e */ e são 
simplesmente ignorados pelo compilador, exceto 
caso se encontrem dentro de uma string. 
 
 Não podem existir comentários dentro de 
comentários.

Continue navegando