Buscar

02_-_Introducao_a_Linguagem_de_Programacao_C

Prévia do material em texto

TÉCNICAS DE PROGRAMAÇÃO 1 
INTRODUÇÃO À LING C 
Prof Geiza Maria Hamazaki da Silva 2013.1 
Resumo 
 Para implementar algoritmos em uma linguagem de 
programação é importante conhecer o conceitos 
básicos dos ambientes de programação. Para o 
teste do ambiente a ser utilizado no curso é 
apresentado o Primeiro programa na linguagem 
C. 
 
Compilação de programas 
 Ao escrever um programa é realizado a codificação de 
uma sequência de operações para serem executadas 
pelo computador. 
Algoritmo: Programa Linguagem C 
variáveis 
a,b,c: inteiro; 
início 
leia(a,b); 
c  a+b; 
imprima(c); 
fim. 
 
int a,b,c; 
scanf(“%d %d”,&a,&b); 
c= a+b; 
printf(“%d”, c); 
Compilação de programas 
 Um programa escrito em C não pode ser diretamente 
executado, pois os computadores só executam programas 
em sua linguagem de máquina (Assembly) - específica 
de cada modelo (ou família de modelos) de computador. 
Não entendo 
essas 
instruções!! 
http://3.bp.blogspot.com/_eU2zBBNQzO4/TP7N1jQzx9I/AAAAAAAAAX4/W1NHUpJj0
A0/s1600/La+tristeza+del+computador.jpg 
int a,b,c; 
scanf(“%d d”&a,&b); 
c= a+b; 
printf(“%d”, c); 
Compilação de programas 
 A linguagem de Máquina será referenciada neste 
conjunto de slides como M. 
Agora sim!! Eu 
entendo a 
Linguagem M! 
int a,b,c; 
scanf(“%d d”&a,&b); 
c= a+b; 
printf(“%d”, c); 
int, 7h 
AXBX, AX 
int, 4h 
AXCX, AX 
SOMA:sub CX 
add BX 
jz SOMA 
AX, BX 
out 
C
o
m
p
ila
çã
o
 
Compilação de programas 
 C é uma linguagem compilada 
 o que significa que um programa escrito em C 
(referenciada como Pc) só pode ser executado se antes 
for “traduzido” para a linguagem de máquina (M) 
correspondente ao modelo do computador a ser 
utilizado. 
 A esse processo damos o nome de compilação. 
Compilação de programas 
 O termo máquina é intencionalmente vago. 
Computadores idênticos com sistemas operacionais 
diferentes devem ser considerados máquinas, ou 
plataformas diferentes. 
 Um programa em C compilado em um PC com Windows 
não pode ser executado em um PC com linux e vice-versa 
para cada máquina devemos repetir o processo de 
compilação. 
Compilação de programas 
 Um compilador (Cm) - escrito em M, realiza os seguintes 
passos: 
 1-lê o programa Pc - escrito em C; 
2- traduz cada uma de suas instruções para M, 
escrevendo um programa-objeto Pm. 
 O programa-objeto é conhecido também como 
 código-objeto ou código binário ou código de 
máquina. 
Pc 
programa 
fonte 
Cm 
compilador 
Pm 
programa 
objeto 
Processo de Compilação 
Compilação de programas 
 Desta forma a construção de um programa que usa 
a linguagem C envolve duas fases independentes: 
 compilação e execução 
conforme ilustra a figura abaixo: 
dados de 
entrada 
saída 
Pm 
programa 
objeto 
Processo de Execução 
Pc 
programa 
fonte 
Cm 
compilador 
Pm 
programa 
objeto 
Processo de Compilação 
Compilação de programas 
 Relação entre o processo de Compilação e 
Execução: 
dados de 
entrada 
saída 
Processo de 
Execução 
Pc 
programa 
fonte 
Cm 
compilador 
Pm 
programa 
objeto 
Processo de Compilação 
Compilação de programas 
 Na prática, o programa fonte e o 
programa objeto são armazenados em 
arquivos em memória Secundária, aos 
quais nos referimos como arquivo fonte 
e arquivo objeto. 
dados de 
entrada 
saída 
Processo de 
Execução 
Pc 
programa 
fonte 
Cm 
compilador 
Pm 
programa 
objeto 
Processo de Compilação 
Desenvolvendo programas em C 
 Para desenvolver programas em C é necessário, no 
mínimo, um editor e um compilador: 
O editor de texto é utilizado para escrever os 
programas fontes, que são salvos em arquivos. 
 Pode-se utilizar qualquer editor de texto para escrever os 
programas-fontes, exceto editores que incluem caracteres 
de formatação (como o Word do Windows, por exemplo); e 
O compilador transformam os programas fontes em 
programas objetos (linguagem de máquina) serem 
executados. 
Desenvolvendo programas em C 
 os programas fontes são, em geral, armazenados em 
arquivos cujo nome tem a extensão “.c” 
 os programas executáveis possuem extensões que 
variam com o sistema operacional 
 no Windows, têm extensão “.exe” 
 no Unix (Linux), em geral, não têm extensão. 
Ambiente de programação 
 Para execução dos trabalhos, será necessário obter 
um compilador C 
Os alunos podem usar qualquer compilador C que siga 
o padrão ANSI. Entretanto, o compilador de 
referência do nosso curso é do Visual C++. 
Estilo de programação 
 Adquire-se um bom estilo de programação apenas 
com a prática. 
 Recomendação 
 Sempre escrever um programa que seja de fácil 
compreensão para outras pessoas 
 Não existe fórmula mágica que garanta programas 
legíveis. Porém, existem diversas boas práticas de 
programação a serem seguidas. 
Primeiro programa C 
 Considerando um exemplo simples que imprime 
uma linha de texto 
1. /* primeiro programa */ 
2. #include <stdio.h> 
 
3. /* a funcao main inicia o programa */ 
4. int main(){ 
5. printf(“Bem-vindo ao Curso de TP-1!\n"); 
6. /* indica que o programa terminou com sucesso */ 
7. return 0; 
8. } 
O par de caracteres /*, indicando um 
comentário, que termina com o 
próximo par de caracteres */ 
Primeiro programa C 
Comentário: 
 /* primeiro programa */ 
 Programadores inserem comentários para documentar 
programas e também para ajudar as pessoas a ler e a 
entender programas. 
Os comentários são ignorados pelo computador 
durante a execução do programa. 
 
 
Primeiro programa C 
 Considerando um exemplo simples que imprime 
uma linha de texto 
1. /* primeiro programa */ 
2. #include <stdio.h> 
 
3. /* a funcao main inicia o programa */ 
4. int main(){ 
5. printf(“Bem-vindo ao Curso de TP-1!\n"); 
6. /* indica que o programa terminou com sucesso */ 
7. return 0; 
8. } 
Diretiva de Pré-processamento 
Primeiro programa C 
 linha 2 
#include <stdio.h> 
 É uma diretiva de pré-processamento, que é uma 
mensagem para o pré-processador C. 
 As linhas que iniciam com # são processadas pelo 
pré-processador antes de o programa ser 
compilado. 
 Essa linha instrui o pré-processador a incluir no 
programa o conteúdo do arquivo de cabeçalho de 
biblioteca de entrada/saída stdio.h, este arquivo 
deve ser incluído em qualquer programa que realize 
saída de dados na tela ou a entrada de dados a 
partir do teclado. 
Primeiro programa C 
 Erro comum de programação 1: 
 Esquecer de incluir o arquivo de cabeçalho. Neste caso 
o compilador emite uma mensagem de erro, no 
exemplo apresentado o compilador não reconhecerá a 
função printf. 
Primeiro programa C 
 Considerando um exemplo simples que imprime 
uma linha de texto 
1. /* primeiro programa */ 
2. #include <stdio.h> 
 
3. /* a funcao main inicia o programa */ 
4. int main(){ 
5. printf(“Bem-vindo ao Curso de TP-1!\n"); 
6. /* indica que o programa terminou com sucesso */ 
7. return 0; 
8. } 
Linha em branco 
Primeiro programa C 
 Utilize linhas em branco e caracteres de espaço em 
branco para aprimorar a legibilidade do 
programa. 
 
Primeiro programa C 
 Considerando um exemplo simples que imprime 
uma linha de texto 
1. /* primeiro programa */ 
2. #include <stdio.h> 
 
3. /* a funcao main inicia o programa */ 
4. int main(){ 
5.printf(“Bem-vindo ao Curso de TP-1!\n"); 
6. /* indica que o programa terminou com sucesso */ 
7. return 0; 
8. } 
Função Principal- 
Marca o início do 
código a ser 
compilado. 
Primeiro programa C 
int main() 
 A main é uma função caracterizada pelos 
parênteses depois da palavra main. 
 Um programa em C, em geral, é constituído de 
diversas pequenas funções que são independentes 
entre si. Funções são blocos de códigos que 
realizam um processamento específico. Por exemplo 
a função printf imprime a informação entre os 
parênteses na tela. 
Primeiro programa C 
 Em C não é permitido definir uma uma função 
dentro de outra. Pode-se apenas realizar 
chamadas a uma função dentro da outra. 
 Um programa em C tem que, obrigatoriamente, 
conter a função principal main. 
Primeiro programa C 
 A execução de um programa começa pela função 
principal. 
 a função main é automaticamente chamada quando o 
programa é carregado para a memória principal, 
mesmo se main não for a primeira função no código do 
programa. 
 A palavra-chave int à esquerda de main indica 
que main retorna um valor do tipo inteiro . 
 A chave esquerda { deve começar o corpo da 
função e a chave direita } correspondente deve 
terminar o corpo da função. 
Primeiro programa C 
 Considerando um exemplo simples que imprime 
uma linha de texto 
1. /* primeiro programa */ 
2. #include <stdio.h> 
 
3. /* a funcao main inicia o programa */ 
4. int main(){ 
5. printf(“Bem-vindo ao Curso de TP-1!\n"); 
6. /* indica que o programa terminou com sucesso */ 
7. return 0; 
8. } 
Primeiro programa C 
 As funções auxiliares são chamadas, direta ou 
indiretamente, a partir da função principal 
 linha 5 
printf() 
 printf é uma função da biblioteca padrão do C, 
que possibilita a saída de valores segundo um 
determinado formato. 
 Para usar a função printf() incluímos o arquivo 
de cabeçalho stdio.h 
Primeiro programa C 
“Bem-vindo ao Curso de TP-1!\n” 
 Uma cadeia de caracteres (ou string) em C é uma 
série de caracteres entre aspas duplas 
 os caracteres de espaço em branco em cadeia de 
caracteres não são ignorados pelo computador. 
 a barra invertida (\) é chamada de caractere de 
escape, ela indica que um caractere especial deve 
ser impresso. Neste exemplo o \n indica que o cursor 
deve se mover para o começo da próxima linha na 
tela. 
Primeiro programa C 
 Quando uma barra invertida é encontrada em 
uma cadeia de caracteres 
 o próximo caractere é combinado com a barra 
invertida para formar um caractere de escape (um 
único caractere) 
 o caractere de escape \n significa nova linha, este é 
um caractere não imprimível. 
 
Primeiro programa C 
 Além do caractere de nova linha, existem alguns outros 
caracteres de escape que são frequentemente utilizados nos 
formatos de saída 
 
 
 
 
\n nova linha: posiciona o cursor de tela no início da próxima 
linha 
\t tabulação: move o cursor de tela para a próxima parada 
de tabulação 
\r retorno de carro (retrocesso): posiciona o cursor de tela no 
início da linha atual, não avança para a próxima linha 
\a alerta: aciona o aviso sonoro do sistema 
\’ aspas simples: imprime um caractere de aspas simples ’ 
\” aspas duplas: imprime um caractere de aspas duplas ” 
\\ barra invertida: imprime um caractere de barra invertida \ 
Primeiro programa C 
printf(“Bem-vindo ao Curso de TP-1!\n"); 
 Este é um comando 
 Todos os comandos e todas as declarações em C 
são terminados pelo caractere ponto-e-vírgula (;) 
 cuidado! as diretivas de pré-processamento (como 
#include, por exemplo) não terminam com um 
ponto-e-vírgula. 
 a função printf é chamada, ou invocada, fazendo 
com que a cadeia de caracteres passada com 
argumento seja impressa na tela. 
Primeiro programa C 
 Considerando um exemplo simples que imprime 
uma linha de texto 
1. /* primeiro programa */ 
2. #include <stdio.h> 
 
3. /* a funcao main inicia o programa */ 
4. int main(){ 
5. printf(“Bem-vindo ao Curso de TP-1!\n"); 
6. /* indica que o programa terminou com sucesso */ 
7. return 0; 
8. } 
Saída da função 
Primeiro programa C 
 linha 7 
return 0; 
 É uma das várias maneiras utilizada para sair de uma 
função. 
 Quando o comando return é utilizado no fim de main o 
valor zero indica que o programa terminou com sucesso. 
 A chave direita } indica o fim da função main. 
 
Nas próximas aulas será discutido as funções em detalhes e 
as razões de se incluir esta linha se tornarão claras. Por 
enquanto simplesmente inclua este comando em cada programa. 
 
Primeiro programa C 
 Erro comum de programação 2 
Omitir o ponto-e-vírgula no final de uma instrução. 
 Erro de sintaxe 
 A sintaxe de uma linguagem de programação 
especifica as regras da criação de um programa 
adequado nessa linguagem. 
 Um erro de sintaxe ocorre quando o compilador 
encontra um código que viola as regras da linguagem. 
O compilador normalmente emite uma mensagem de 
erro para ajudar o programador a localizar e corrigir 
o código incorreto. 
Primeiro programa C 
 Erro de sintaxe (continuação) 
 Erros de sintaxe também são chamados erros de 
compilação, erros em tempo de compilação, porque o 
compilador os detecta durante a fase de compilação. 
 Não será possível executar seu programa até você 
corrigir todos os erros de sintaxe nele. 
 Alguns erros de compilação não são erros de sintaxe, 
podem ser erro de linkedição. Não encontram os 
arquivos para montar o arquivo executável. 
37 
Referências 
 W. Celes, R. Cerqueira e J.L. Rangel, Introdução a 
Estruturas de Dados - com técnicas de programação 
em C, Ed. Campus, 2004 
 A. Kelley, A Book on C, Benjamin Cummings, 1995 
 Notas de aulas do curso presencial de Técnicas de 
Programação1- UNIRIO - Desenvolvidos pelas 
professoras: Geiza Maria Hamazaki da Silva e Adriana 
C. F Alvim – primeiro semestre de 2011.

Continue navegando