Escolar Documentos
Profissional Documentos
Cultura Documentos
1 / 35
A função main()
main()
É a principal função de um programa
Ela sempre deve existir
Marca o inı́cio da execução do programa
Sintaxe básica:
main ( )
2 / 35
• Os símbolos /* e */ indicam o começo e o fim de um comentário.
Algumas
• Os símbolosnotas importantes
{ e } indicam (MUITO
o começo e o fim IMPORTANTES)
de uma função.
• Os símbolos " e " indicam o começo e o fim de uma string.
• Todo comando deve ser encerrado com o símbolo ; (ponto‐e‐vírgula).
#include <stdio.h>
int main()
{
printf("Hello, world!\n");
return(0);
}
3 / 35
Principais bibliotecas da linguagem C
Principais bibliotecas da linguagem C
A linguagem C possui um conjunto mínimo de instruções, visando a criação
A linguagem
de programas C possui um
executáveis deconjunto
tamanhomínimo de instruções,
pequeno. A adição devisando
novas a
criação de programas executáveis de tamanho pequeno. A adição de
funcionalidades é feita através da inclusão de bibliotecas, que contêm
novas funcionalidades é feita através da inclusão de bibliotecas, que
classes de funções específicas para o tratamento de dados desejado.
contêm classes de funções específicas para o tratamento de dados
int main()
{
printf("Primeiro programa em C!");
system("PAUSE");
return(0);
}
A inclusão de bibliotecas
A inclusão devem
de bibliotecas serser
devem as primeiras instruções
as primeiras de de
instruções umum
programa emem
programa C. C
PC‐I © MAP’2009 Conceitos básicos da linguagem C 5
4 / 35
Principais bibliotecas da linguagem C
5 / 35
Tipos primitivos da linguagem C
6 / 35
A tabela ASCII padrão
A tabela ASCII padrão
7 / 35
Tipos e valores
Tipos e valores
Os valores admissíveis para cada tipo primitivo podem ser alterados com o
Os valores
uso dos admissíveis
modificadores para cada
unsigned, tipo primitivo
short e long. podem ser alterados
com o uso dos modificadores unsigned, short e long
8 / 35
Constantes e variáveis
Constantes e variáveis
Em
Emlinguagens de programação
linguagens de alto
de programação denível, os dados
alto nível, os podem
dados ser de duas
podem ser de
naturezas: constantes
duas naturezas: ou variáveis
constantes ou variáveis
Constantes
Assumem um único valor, do início ao fim da execução do programa, não podendo
ser alterado por nenhum comando ou função.
Variáveis
Assumem um valor inicial, que pode ser alterado por alguma função ou comando
durante a execução do programa.
9 / 35
mazenamento de dados
Armazenamento de dados
Memória
endereços
0xFF08
0xFF09
0xFF10
0xFF11
0xFF12
0xFF13
A Declaração
declaração é um comando que associa o nome de uma constante
ou de uma variável a um determinado endereço de memória.
Memória
endereços
0xC907
0xC908
0xC909
0xC910
0xC911
int main() 0xC912
{
const int i = 5;
Memória
int j; endereços
0xAD14
...
0xAD15
return(0); 0xAD16
} 0xAD17
0xAD18
0xAD19
11 / 35
Regras #0 e #1 sobre constantes e variáveis
Regras #0 e #1 das variáveis
Declaração prévia
Toda variável deve ser declarada antes de ser usada
Declaração única
O nome da variável deve ser único
12 / 35
Nomes de constantes e variáveis
13 / 35
Palavras reservadas da linguagem C
14 / 35
Atribuindo valores à variáveis
Atenção
• o sinal de atribuição (=) não significa igualdade.
• a atribuição sempre atua da direita para a esquerda.
15 / 35
Atribuindo valores à variáveis
j = i; // j armazena o valor 0.
j = i + 1; // agora j armazena o resultado da expressão i + 1.
j = j + 1; // o valor atual de j é somado com 1 e armazenado novamente
// em j.
...
return(0);
}
16 / 35
Operadores aritméticos
Operadores aritméticos
A precedência
A precedência dasdas operações
operações aritméticas
aritméticas em em C obedece
C obedece às regras
às regras
estabelecidas pela Álgebra. Os operadores com mesmo nível de de
estabelecidas pela Álgebra. Os operadores com mesmo nível
precedência
precedência sãosão avaliados
avaliados pelopelo compilador
compilador da esquerda
da esquerda parapara a direita.
a direita.
17 / 35
Expressões aritméticas
Expressões aritméticas
Calcular o perímetro e o volume de uma esfera de raio r = 3.
Calcular o perímetro e o volume de uma esfera de raio r = 3.
4πr22.
PP ==4πr
V = 434 πr33
V = πr
3
int main()
{
const float PI = 3.14159;
float r = 3;
float p, v;
p = 4*PI*r*r;
v = (4.0/3.0)*PI*r*r*r;
return(0);
}
x = i;
y = j;
z = x/y; // x armazena o valor 1.5
z = x/j; // x armazena o valor 1.5
z = i/y; // x armazena o valor 1.5
z = i/j; // x armazena o valor 1.0
19 / 35
Operadores de incremento e decremento
Operadores
São utilizadosde incremento
para adicionar ouesubtrair
decremento
1 unidade de uma variável
inteira
São utilizados para adicionar ou subtrair 1 unidade de uma variável inteira.
i++; // equivale ao comando i = i + 1;
j--; // equivale ao comando j = j – 1;
Notação pré‐fixa
O valor da variável é atualizado antes de ser utilizado na expressão.
i = 3;
j = (++i); // i assume o valor 4, j assume o valor de i
Notação pós‐fixa
O valor da variável é atualizado depois de ser utilizado na expressão.
i = 3;
j = (i++); // j assume o valor de i, i assume o valor 4
20 / 35
A função printf()
Sintaxe básica:
printf(“expressão de controle”, lista de argumentos);
21 / 35
Códigos para a função printf()
Códigos para a função printf()
Servem para controle e formatação dos campos de exibição em tela
Servem para controle e formatação dos campos de exibição em tela.
Código Exibição
Caractere Ação
%c caractere simples
\n nova linha
%s cadeia de caracteres
\t tabulação
%d número inteiro
\b retrocesso (backspace)
%u inteiro sem sinal
\f novo formulário
%f numero de ponto
\a alerta (sinal sonoro) flutuante
\r início da linha %e notação científica
\0 caractere nulo %o representação octal
\" exibe o caractere " %x representação
\\ exibe o caractere \ hexadecimal
%% caractere %
22 / 35
Uso da função printf()
Uso da função printf()
Exibir uma mensagem:
printf("Bom dia!");
23 / 35
A função printf() - Exemplo
A função printf()
int main()
{
char a = 'A';
24 / 35
A função puts()
A função puts()
25 / 35
A função scanf()
Sintaxe básica:
scanf(“expressão de controle”, lista de argumentos);
26 / 35
UsoUso
dada
função
funçãoscanf()
scanf()
27 / 35
Uso combinado printf() e scanf()
Uso combinado printf() e scanf()
AA função
função scanf()
scanf()nãonão
devedeve
ser utilizada para exibir
ser utilizada paramensagens.
exibir mensagens
28 / 35
Exemplo
29 / 35
Exemplo
Exemplo
Exibir o valor correspondente em graus fahrenheit de uma temperatura
em ograus
Exibir valorcelsius informada pelo
correspondente usuário,
em graus tal que de uma temperatura em
fahrenheit
grausF = (9 ∗ grausC + 160)/5
graus celsius informada pelo usuário.
#include <stdio.h>
#include <stdlib.h>
int main()
{
float grausC, grausF;
• getchar(): lê
getchar(): lê um
umcaractere
caractereatéatéque
quea atecla
tecla <ENTER>
<ENTER> sejaseja
pressionada. Se
pressionada. Se mais de
mais de um caractere for um caractere
digitado, apenasfor odigitado,
primeiroapenas o primeiro
caractere será
caractere seráe considerado
considerado e odescartado.
o restante será restante será descartado
#include <stdio.h>
#include <stdlib.h>
int main()
{
char a;
printf(
printf("Digite um caractere: ");
);
a = getchar(); // armazena a entrada até pressionar <ENTER>
printf( ”Caractere digitado: %c\n", a);
system("PAUSE");
return(0);
}
31 / 35
Funções nativas
Funções nativasdedeentrada
entradaeesaída
saída
int main()
{
char a;
printf(
printf("Digite uma letra minuscula: ");
);
a = getchar();
putchar( toupper(a) );
putchar('\n')
system("PAUSE");
return(0);
}
32 / 35
Funções nativas de entrada e saída
33 / 35
Funções nativas de entrada e saída
Funções nativas de entrada e saída
int main()
{
char a;
34 / 35
Funções de manipulação de caracteres
char a;
isalpha(a): testa se o caractere é uma letra
isdigit(a): testa se o caractere é um algarismo
isespace(a): testa se é o caractere espaço ‘ ’
islower(a): testa se é uma letra minúscula
isupper(a): testa se é uma letra maiúscula
tolower(a): converte o caractere para minúscula
toupper(a): converte o caractere para maiúscula
35 / 35