3 – O Primeiro Programa em C
Unesp – Campus de Guaratinguetá
Curso de Programação Computadores
Prof. Aníbal Tavares
Profa. Cassilda Ribeiro
Unesp-Campus de Guaratinguetá
3 – O Primeiro Programa em C
3.1 - Introdução
Depois dos conceitos apresentados
anteriormente, vamos fazer nosso primeiro
programa em C.
Precisamos então,
conhecer algumas regras
básicas de programação em C, tais como:
 como criar um programa principal,
 como escrever as instruções,
 como marcar o inicio e o fim do programa.
1o. Programa em C
2
Unesp-Campus de Guaratinguetá
3 – O Primeiro Programa em C
3.2 – Programa: Definição
Programa informático

Seqüência de instruções,
organizadas de modo a
resolver determinados
problemas.
 As instruções são dadas através de códigos
 Cada linguagem de programação possui uma
sintaxe (código).
 De modo geral um programa em C é composto de uma
parte principal, chamado programa principal, e de
vários subprogramas que também são chamados de
funções.
1o. Programa em C
3
Unesp-Campus de Guaratinguetá
3.2 – Programa: Definição

O programa principal é executado em primeiro
lugar e coordena a execução das demais funções
(subprogramas).

Na Linguagem C o Programa Principal é também
considerado como uma função

Cada função do programa deve receber um nome que
pode ser escolhido pelo programador.

O programa principal deve obrigatoriamente receber o
nome de main( ).
1o. Programa em C
4
Unesp-Campus de Guaratinguetá
3.2 – Programa: Definição
A sintaxe do programa principal em C é:
main ()
Obs: A palavra main deve
{
ser escrita com letra minúscula.
<Instruções>
}
O
Lembre-se que em C
main ≠ Main ≠MAIN
programa principal se compõe de um
cabeçalho “main ()” seguido de um “corpo”
que contém o conjunto de instruções que
devem ser executadas.
1o. Programa em C
5
Unesp-Campus de Guaratinguetá
3.2 – Programa: Definição
As chaves servem para marcar o inicio ( { ) e o
} ) de
um conjunto
deoinstruções.
fim(
As chaves
servem
para marcar
inicio ( { ) e o fim( } ) de
um conjunto de instruções.
Um programa bem escrito deve ter boa
apresentação
Um programa bem escrito deve ter boa apresentação e
e seu aspecto deve ressaltar a
seu aspecto deve ressaltar a estrutura da sua execução.
estrutura da sua execução.
 Por essa razão deve-se colocar as chaves que iniciam uma
instrução
Por essa
deve-se
colocar
as (})
chaves
que a
({)razão
na mesma
coluna
da chave
que encerra
instrução.
iniciam uma instrução ({) na mesma coluna da
chave (}) que encerra a instrução.
1o. Programa em C
6
Unesp-Campus de Guaratinguetá
3 – O Primeiro Programa em C
3.3 - Primeiras Instruções em C
1)
printf(<texto>);
onde <texto> representa um texto qualquer
colocado entre aspas.
OBS: O ponto e virgula (;) é colocado no final de
cada instrução e serve como separador.
Exemplos:
printf(“Estou muito feliz. Passei no vestibular”);
printf(“Bom dia! Tudo Bem ?”);
1o. Programa em C
7
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
2) System(“pause”);
Está instrução interrompe a execução do
programa e escreve a seguinte mensagem:
“pressione qualquer tecla para continuar...”
A execução do programa será retomada
quando o usuário pressionar alguma tecla.
1o. Programa em C
8
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Vamos então escrever o nosso primeiro Programa em C:
prog01
1. #include<stdio.h>
2. #include<stdlib.h>
3. main( )
4. {
5. printf (“Bom dia! Tudo bem? \n” );
6. system(“pause”);
7. }
OBS: Os números na frente de cada linha não fazem parte
do programa. Eles foram colocados para facilitar a
localização dos códigos
1o. Programa em C
9
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Ao ser executado, este programa vai escrever a
seguinte mensagem na tela do DOS:
No programa prog01 observe que:
1o. Programa em C
10
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Na linha 1 a instrução #include<stdio.h> indica ao
que o programa fonte vai utilizar a instrução da biblioteca
stdio.h. A função printf pertence a essa biblioteca.
Na linha 2 a instrução #include<stdlib.h> indica ao
que o programa fonte vai utilizar a instrução da biblioteca
stdlib.h. A função system(“pause”) pertence a essa
biblioteca.
Na linha 4, a seqüência \n é um caractere de controle
que faz com que o cursor mude para a linha de baixo.
Sem o \n a mensagem apareceria na tela do seguinte
modo:
Bom dia! Tudo bem? Pressione qualquer tecla para continuar. . .
1o. Programa em C
11
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C

Se na linha 4 fossem colocados \n\n, o cursor pularia
duas linhas, e a tela ficaria como mostrado abaixo:
Se na linha 5 não fosse colocado system (“pause”) o programa
iria rodar, escrever na janela do DOS e a seguir iria fechá-la
tão rapidamente que seria impossível ver o que foi escrito.
O comando system(“pause”) não permite que a janela do DOS se
feche e deste modo pode-se ler o que foi escrito na mesma.
1o. Programa em C
12
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C

O mesmo programa poderia ser escrito como mostrado abaixo,
e o resultado obtido seria o mesmo do programa anterior.
prog02
1.
#include<stdio.h>
2.
#include<stdlib.h>
3. main( )
4. {
5. printf (“Bom dia! “);
6. printf(“ ” );
7. printf(“Tudo bem? \n” );
No programa 02 a função
printf é chamada várias
vezes. Como não se colocou
o caractere \n no final de
cada printf a frase “Bom dia!
Tudo bem?” será escrita na
mesma linha.
8. printf(“ \n” );
9. system(“pause”);
10. }
1o. Programa em C
13
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
3) puts(<texto>);
onde
<texto> representa um texto qualquer
colocado entre aspas.
Exemplos:
puts(“Estou gostanto de aprender Computação”);
puts(“Bom dia! Tudo Bem ?”);
A função puts, imprime o texto entre aspas e
automaticamente faz o cursor pular uma linha. Com
ela não é preciso usar o caractere \n
1o. Programa em C
14
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
A adição do caractere \n na função puts faz com
que o cursor pule duas linhas. O primeiro pulo é
devido a função puts e o segundo pulo é por
causa do \n
Exemplo: Re-escrever o programa Prog02,
usando a função puts
1o. Programa em C
15
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Prog02 com o puts
Resultado com o puts
#include<stdio.h>
#include<stdlib.h>
main( )
{
puts ("Bom dia! ");
puts("Tudo bem? " );
system(" pause");
}
1o. Programa em C
16
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Exercício 1
Solução 1
#include<stdio.h>
Escreva um programa em
C que tenha exatamente a #include<stdlib.h>
main( )
saída mostrada abaixo :
A linguagem C
eh a mais usada
por quem sabe
programar.
{
printf ("\nA linguagem C\n");
printf("eh a mais usada\n" );
printf("por quem sabe \n" );
printf("programar\n\n" );
system("pause");
}
1o. Programa em C
17
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Ao se executar o programa, irá aparecer a seguinte tela no computador.
1o. Programa em C
18
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Exercício 2: Reescrever o programa anterior usando
somente 1 printf
prog03
solução 2
1.
#include<stdio.h>
2.
#include<stdlib.h>
3.
main( )
4.
{
5.
printf (“A linguagem C\neh a mais usada\npor quem sabe \nprogramar\n\n” );
6.
system(“pause”);
7.
}
Observe que não é necessário espaço em branco antes ou depois
do comando \n. Observe também que as aspas serve para
delimitar um string.
1o. Programa em C
19
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
4) O Caractere Especial (\)
A questão que se coloca é
RESPOSTA 

Como fazer para imprimir
uma frase em que as
aspas devem aparecer
na frase impressa?
Colocando-se uma barra \ antes das aspas
que se pretende escrever
Exemplo: Fazer um programa para escrever a seguinte frase:
A primavera está “simplesmente” MARAVILHOSA.
1o. Programa em C
20
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
#include<stdio.h>
#include<stdlib.h>
main( )
{
printf ("A primavera esta \"simplesmente\" MARAVILHOSA\n\n" );
system("pause");
}
No programa acima o caractere \”serve para informar ao
compilador que estas aspas não estão delimitando o
comando printf. Logo, elas irão aparecer no texto
RESUMINDO: O caractere \ é utilizado para retirar o
significado especial que um caractere apresenta. No caso das
aspas (“), é retirado o significado delimitador do printf e é
considerado como aspas. 1o. Programa em C
21
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Ao se executar o programa anterior, irá aparecer a
seguinte tela no computador.
1o. Programa em C
22
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
4) /* Comentários */
Toda vez que se faz um programa deve-se colocar comentários
indicando o que o programa faz, quem é o autor do programa, etc.
Esses comentários não devem ser levados em conta pelo
compilador pois eles tem a finalidade de documentar o programa.
 Um comentário em C é qualquer conjunto de caracteres delimitado pelos sinais /* e */ ou após os sinais //.
Exemplo: /*
Prog 03.C :
*/
/* autor: CASSILDA RIBEIRO */
/* data: 10/03/2008
*/
1o. Programa em C
23
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Um comentário pode se estender por mais de uma linha,
como mostram os exemplos a seguir:
1)
/* prog 04.c
* autor: CASSILDA RIBEIRO
* data: 10/03/2009
*/
2)
/*************************************
*
prog 05.c
*
*
autor: CASSILDA RIBEIRO *
*
data: 10/03/2009
Obs: Os asteriscos
horizontais ou verticais
sevem apenas para dar uma
estética ao comentário. O
que importa é que o
compilador ignora tudo que
está entre os símbolos /* e
*/
*
***************************************/
1o. Programa em C
24
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
3)
// prog 06.c
// autor: Carmem Lúcia
// data: 10/03/2009
//
Obs: As duas baras (//) são
colocadas na frente de cada
frase. O compilador irá
ignorar tudo o que vier
escrito, na linha, logo após
as barras.
4) //*************************************
// prog 07.c
*
// autor: CASSILDA RIBEIRO *
// data: 10/03/2009
*
//*************************************
1o. Programa em C
25
Unesp-Campus de Guaratinguetá
3.3 - Primeiras Instruções em C
Os comentários podem ser colocados em qualquer
parte do programa. Existem contudo duas exceções
a saber:
1) Comentário dentro de outro comentário não é
permitido pelo compilador.
2) Dentro do printf os caracteres /* e */ perdem seu
significado especial e são considerados como
caracteres normais.
Ex: printf(“um comentario em C deve vir entre /* e*/”);
A saída será: um comentario em C deve vir entre /* e*/
1o. Programa em C
26
Unesp-Campus de Guaratinguetá
3.4 Resumo do Capítulo
► Um programa em C começa com as declarações
de biblioteca, por exemplo #include<stdio.h> e
#include<stdlib.h>, seguido da função main( ). A
função main( ) deve estar em todos os programas.
► Os comandos ou instruções a serem executados
devem ser colocado entre chaves{ }
►
Um bloco é qualquer conjunto de instruções
entre { }.
► Cada instrução deve ser seguido de ponto e
virgula (;).
1o. Programa em C
27
Unesp-Campus de Guaratinguetá
3.4 Resumo do Capítulo
 A disposição do código é arbitraria e depende do
gosto do programador.
 A linguagem C é CASE SENSITIVE
 Os strings em C são delimitados por aspas
 As mensagems são escritas usando a função printf( )
e puts()
 As funções printf( ) e puts() não fazem parte da
linguagem C. Elas pertencem a biblioteca stdio.h
1o. Programa em C
28
Unesp-Campus de Guaratinguetá
3.4 Resumo do Capítulo
 A função system(“pause”), durante a execução, faz
com que a tela do DOS fique parada até que seja
digitado um caractere qualquer. Ela pertence a biblioteca
stdlib.h
 As linhas começadas por #, por ex: # include,
#define, etc. não são C, mas sim diretivas ao pré
processador e que por isso não terminam com ponto e
virgula (;).
 Os comentários são escritos entre /* e */ ou após // .
Eles são ignorados pelo compilador a menos que estejam
dentro de um string.
 Não podem existir comentários dentro de comentários.
1o. Programa em C
29
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
1 – Fazer um programa em C usando somente o printf, e
que uma vez executado, mostre o seguinte na tela do DOS:
Iniciais: __ __
Codigo?: __ __
Nascimento: __/__/_____
Numero de sorte:__ __\__ __
Texto: “__ __ __ __”
1o. Programa em C
30
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
SOLUÇÃO EX-1:
/******************************
* Exercicio 1 capítulo 3
*
*
*
*******************************/
#include<stdio.h>
#include<stdlib.h>
OBS: o caractere \\ dentro do
main()
comando printf serve para
{
que aparece a \ na frase:
printf ("Iniciais:_ _\n\n”);
Numero de sorte:_ _\_ _
printf(“Codigo?:_ _\n\n”);
printf(“Nascimento:_ _/_ _/____\n”);
printf(“Numero de sorte:_ _\\_ _\n”);
printf(“Texto:\"_ _ _ _\"\n\n");
system("pause"); /*fim do programa*/
1o. Programa em C
}
31
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
Ao se executar o programa anterior, irá aparecer a seguinte tela no
computador.
1o. Programa em C
32
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo

O programa anterior poderia ser feito utilizando-se
somente um printf, como mostrado a seguir:
/**********************************
* Exercicio 1 tópico 3
*
*
*
***********************************/
#include<stdio.h>
#include<stdlib.h>
main()
{
printf ("Iniciais:_ _\n\nCodigo?:_ _\n\nNascimento:_ _/_ _/____\nNumero
de sorte:_ _\\_ _\nTexto:\"_ _ _ _\"\n\n");
system("pause"); /*fim do programa*/
}
1o. Programa em C
33
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
2 – Fazer um programa em C que apresente 2 linhas com a frase
“Olha o apito do trem!”, ouvindo-se um apito ao final de cada
string.
**********************************
SOLUÇÃO
* Exercicio 2 tópico 3
*
*
*
***********************************/
#include<stdio.h>
#include<stdlib.h>
main( )
{
printf ("Olha o apito do trem\a\a\n"); /* aqui o \a faz o sinal sonoro*/
printf ("Olha o apito do trem\7\n"); /* aqui o \7 também faz sinal
sonoro*/
system("pause");
} /*fim do programa*/
1o. Programa em C
34
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
Ao executar este programa, irá aparecer a seguinte tela no computador,
com um sinal sonoro após escrever cada linha.
1o. Programa em C
35
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
3- Escreva um programa em C que apresente a
seguinte saída:
1–
Clientes
2–
Fornecedores
3–
Faturas
0–
Sair
OBS: O caractere \t é o
responsável por fazer a
tabulação
/********************************
* Exercicio:3 tópico 3
*
*
*
********************************/
#include<stdio.h>
#include<stdlib.h>
main()
{
printf("1- \tClientes\n");
printf("2- \tFornecedores\n");
printf("3- \tFaturas\n\n\n");
printf("0- \tsair\n\n");
system("pause"); /*fim do programa*/
}
1o. Programa em C
36
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
Ao se executar o programa anterior, irá aparecer a seguinte tela no
computador.
1o. Programa em C
37
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
4- Indique os erros de compilação que seriam detectados
nos seguintes programa
4.1)
/*
* copyright: Asneira Suprema!!!
*/
#include<stdio.h>
4.2) /*
* copyright: Asneira Suprema!!!
*/
#include<stdio.h>
#include<stdlib.h>
#include<stdlib.h>
Main()
{
printf(“Hello World”);
system("pause");
}
main
{
printf(“Hello World”);
system("pause");
}
A função main deve ser escrita
com letra minúscula
Faltou parêntese na função main
1o. Programa em C
38
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
4.3) /*
* copyright: Asneira Suprema!!!
*/
#include<stdio.h>
main()
{
print(“Hello World”);
system("pause");
}
O comando correto é printf e
não somente print e faltou a
biblioteca #include<stdlib.h>.
4.4) /*
* copyright: Asneira Suprema!!!
*/
#include<stdio.h>
#include<stdlib.h>
main()
{
printf(“Hello World”);
system("pause");
Faltou chave no fim do
programa
1o. Programa em C
39
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
5. Fazer um programa em C usando somente o
puts. Faça o programa imprimir “Hello World”
com uma mensagem de texto explicando que o
mesmo foi feito usando a função puts no lugar
do printf.
Solução Exercício 5
1o. Programa em C
40
Unesp-Campus de Guaratinguetá
Solução Exercício 5
/**************************************************
* Exercício 5 tópico 3
* Usar função puts no lugar de printf para imprimir.
* A função puts imprime e pula linha.
* O printf imprime e continua na mesma linha.
* copyright: Asneira Pura!!!
***************************************************/
#include<stdio.h>
#include<stdlib.h>
main()
{
puts("Hello World");//aqui estamos usando a função
//puts no lugar do printf()
puts("");
puts("Isso foi impresso com o puts ao inves do printf");
puts("O puts escreve e ja muda de linha");
puts("");
system("pause");
}
1o. Programa em C
41
Unesp-Campus de Guaratinguetá
3.5 Exercícios do Capítulo
Ao ser executado, o programa anterior vai escrever a
seguinte mensagem na tela
1o. Programa em C
42
Unesp-Campus de Guaratinguetá
3 – O Primeiro Programa em C
FIM
Tópico 3
Prof. Aníbal Tavares
Profa. Cassilda Ribeiro
1o. Programa em C
43
Download

Tópico 3-1o. Programa em C