Buscar

Resumo programação em C - 3 de 5

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
1
OPERADORES 
C tem uma quantidade grande de operadores. Muitos elementos que em outras linguagens 
estão presentes, mas não nos fazem nem mesmo lembrar de operações, em C, são 
considerados operadores. Veremos alguns operadores da linguagem C divididos em alguns 
grupos: 
Em C, a atribuição de valores à variáveis é considerada uma operação. 
Operadores Aritméticos 
 
operador descrição 
= atribuição 
+ soma 
- subtração 
* multiplicação 
/ divisão 
% módulo 
 
Os operadores aritméticos: soma e subtração tem a mesma precedência, a qual é menor que 
a precedência de multiplicação, divisão e módulo. 
O operador módulo aceita somente operandos inteiros. Resulta o resto da divisão do inteiro 
à sua esquerda pelo inteiro à sua direita: 
exemplo: 
int a = 1; 
int b = 3; 
int c = 5; 
int l, m, n, o, p; 
 
l = 17 % c l = 17 % 5 l = 2 
m = 15 + b m = 15 + 3 m = 18 
n= 23 - a n = 23 – 1 n = 22 
o = 18 / b o = 18 / 3 o = 6 
p = 4 * c p = 4 * 5 p = 20 
Operadores Aritméticos de Atribuição 
Pode-se combinar os operadores aritméticos (+, -, *, /, %) como o operador de atribuição da 
seguinte forma: 
 
l *= 4 l = l * 4 
m /= 2 m = m / 2 
n += 5 n = n + 5 
o -= 8 o = o - 8 
p %= 5 p = p % 5 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
2
Operadores de incremento e decremento 
Geralmente os programas em C são menores do que em outras linguagens, porque C possui 
vários operadores que comprimem os comandos: 
++ incrementa de 1 seu operando 
-- decrementa de 1 seu operando 
O operando de incremento (++) trabalha de dois modos: 
1) pré-fixado - o operador aparece antes do nome da variável 
++n → n é incrementado antes de seu valor ser usado 
2) pós-fixado - o operador aparece após o nome da variável 
n++ → n é incrementado depois de seu valor ser usado 
exemplo: 
int a = 4; 
 
a++ a = 5 
a-- a = 3 
l = 2 * a++ l = 2 * 4 l = 8 
m = 2 * ++a m = 2 * 5 m = 10 
Operadores Relacionais 
Estes operadores são usados para fazer comparações 
 
operador descrição 
> maior 
>= maior ou igual 
< menor 
<= menor ou igual 
== igualdade 
!= diferente 
 
C trabalha basicamente com números e não há constantes lógicas. O que ocorre é o 
seguinte: se o resultado de uma comparação for falso, o resultado da operação será 0 (zero); 
e se a comparação for verdadeira, o resultado da operação será 1 (um). 
exemplo: 
int verdade, falso; 
verdade = (15 < 20) verdade = 1 
falso = (15 == 20) falso = 0 
 
FUNÇÕES 
Protótipos 
A maneira moderna de programar em C usa protótipos de funções para que o compilador 
faça verificações nos pontos em que as funções são acionadas e nas próprias definições das 
funções. 
O protótipo de uma função tem o mesmo formato que o cabeçalho da função. 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
3
tipo nome da função ( parâmetros ) ; 
O ponto e vírgula no final é obrigatório, o tipo é referente ao valor que a função retorna, o 
nome da função é um identificador definido pelo programador, e os parâmetros são 
especificados um a um com tipo e nome, ou somente tipo. 
Exemplo: 
int sum(int a, int b); 
float raiz(float); 
void tela(void); 
O tipo chamado "void" serve para indicar que a função não retorna nenhum valor. Este tipo 
é indicado nos casos em que a função será acionada, e não dentro de uma expressão. 
Protótipos em que especificamos o tipo void entre parênteses indicam que a função não tem 
parâmetros. 
Blocos de comandos 
O corpo de uma função é escrito entre chaves, e dentro da função, quando quisermos 
agrupar várias instruções, por exemplo, para estarem todas subordinadas a uma condição, 
devemos colocá-las entre chaves. 
Em C, toda instrução deve terminar por ponto-e-vírgula, exceto aquelas que terminam com 
uma chave. 
Funções 
As funções são os módulos dos programas C, fazem o papel das procedures e functions. 
Sua forma geral é a seguinte: 
tipo nome da função( parâmetros ) 
{ 
corpo da função 
} 
O cabeçalho tem a forma dos protótipos, e o corpo da função vem escrito entre chaves. 
O cabeçalho tem os parâmetros definidos completamente, isto é, com tipo e nome de cada 
um, ou com os parênteses vazios, no caso de não haver parâmetros. 
No corpo da função são feitas as definições locais e, usando os comandos da linguagem C, 
é implementado o algoritmo da tarefa que a função executa. 
Uma coisa muito importante a entender é que C nos dá uma grande liberdade para trabalhar 
com funções, ao ponto de podermos simplesmente desprezar seu valor de retorno 
acionando-as como se fossem procedures. No entanto, é preciso estar atento às certas 
particularidades da linguagem C, principalmente no que se refere aos parâmetros. 
Funções Simples 
Todas as funções em “C” começam com um nome seguido de parênteses (que envolve ou 
não uma lista de parâmetros) e após isso, chaves que envolvem o corpo da função. Se o 
programa vai usar alguma função que eu desenvolvi, deve-se declarar antes do main(). 
Todas as variáveis declaradas em uma função são chamadas variáveis locais, elas são 
conhecidas somente na função na qual elas são definidas 
exemplo: 
#include <stdio.h> 
desenho (); 
main() 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
4
{ 
desenho(); 
} 
 
desenho () 
{int aux; 
for (aux = 1; aux <= 10; aux++) 
 { 
 printf(“*”); 
 } 
} 
⇒Resultado na tela⇐ 
********** 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
5
ENTRADA E SAÍDA DE DADOS 
Função de saída printf <stdio.h> 
Uma das funções de entrada e saída (E/S). 
No interior dos parênteses da função printf estão as informações passadas na tela do 
computador. No exemplo anterior: Primeiro Programa será mostrado na próxima linha da 
tela do computador. 
Sintaxe: printf ( “expressão controle” , lista de argumentos ) 
 
exemplo 1: 
# include <stdio.h> 
main() 
{ 
printf (“Este é o número dois: %d”, 2); 
} 
⇒Resultado na tela⇐ 
Este é o número dois: 2 
 
exemplo 2: 
# include <stdio.h> 
main() 
{ 
printf (“%s está a %d milhões de milhas do Sol”, “Vênus”, 67 
); 
} 
⇒Resultado na tela⇐ 
Vênus está a 67 milhões de milhas do Sol 
 
A função printf aceita os seguintes códigos: 
 
Códigos 
especiais 
Significado Código 
Printf 
Formato 
\n nova linha %c caracter simples 
\t tabulação %d inteiro 
\b retrocesso %e notação científica 
\” aspas %f ponto flutuante 
\\ barra %o inteiro octal 
\f salta página formulário %s cadeia de caracteres 
 %u decimal sem sinal 
 %x hexadecimal 
Tamanho de campos na Impressão 
 
Em printf é possível estabelecer o tamanho mínimo para a impressão de um campo. 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
6
exemplo: 
printf (“Os alunos são %d \n”; 350); 
printf (“Os alunos são %4d \n”; 350); 
printf (“Os alunos são %6d \n”; 350); 
 
⇒Resultado na tela⇐ 
Os alunos são 350 
Os alunos são φ350 
Os alunos são φφφ350 
 
Os comandos de formato podem ter modificadores que especificam a largura do campo, o 
número de casas decimais é um ponteiro de justificação pela esquerda. Um inteiro colocado 
entre o sinal % e o comando de formato age como um especificador de largura mínima do 
campo. Isto preenche a saída com brancos ou zeros para garantir que tenha pelo menos um 
comprimento mínimo determinado. Caso a string ou o número seja maior que o mínimo, 
será totalmente impressa, mesmo que ultrapasse o mínimo. 
O preenchimento padrão é feito com espaços em brancos. 
exemplo: printf (“%5d”,350); → φφ350 
Para preencher com zeros basta colocar o zero entre o sinal % e o número. 
exemplo: printf (“%05d”, 350); → 00350 
Para linhar usando casas decimais basta usar ponto flutuante 
exemplo: 
printf (“%4.2f \n”, 3456.78); → 3456.78 
printf (“%3.2f \n”, 3456.78); → 3456.78 
printf (“%3.1f \n”, 3456.78); → 3456.8 
printf (“%10.3f \n”, 3456.78); → φφ3456.780 
printf (“%.2f %.2f %.2f”, 8.0, 15.3, 584.13); 
printf (“%.2f %.2f %.2f”, 834.0, 1500.55, 480.21); 
→8.00 15.30 584.13 
→834.00 1500.55 480.21 
 
printf (“%10.2f %10.2f %10.2f”, 8.0, 15.3, 584.13); 
printf (“%10.2f %10.2f %10.2f”, 834.0, 1500.55, 480.21); 
→φφφφφφ8.00 φφφφφ15.30 φφφφ584.13 
→φφφφ834.00 φφφ1500.55 φφφφ480.21 
 
O sinal de menos ( - ) precedendo a especificação do tamanho do campo (após sinal %) 
justifica os campos à esquerda: 
 
printf (“%-10.2f %-10.2f %-10.2f”, 8.0, 15.3, 584.13); 
printf (“%-10.2f %-10.2f %-10.2f”, 834.0, 1500.55, 480.21); 
8.00φφφφφφ 15.30φφφφφ 584.13φφφφ 
834.00φφφφ 1500.55φφφ 480.21φφφφ 
Atenção: 
φ = espaço em 
branco 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
7
Função de entrada scanf() <stdio.h> 
A função scanf() é outra função da biblioteca stdio.h e é o complemento de printf(). Ela nos 
permite ler dados formatados da entrada padrão do teclado. 
Sua sintaxe é similar à de printf(), isto é, uma expressão de controle seguida por uma lista 
de argumentos separados por vírgula. 
sintaxe: scanf(“expressão de controle”, lista de argumentos); 
A expressão de controle são os códigos de formatação, precedidos por um sinal % e a lista 
de argumentos deve consistir nos endereços das variáveis. A linguagem C oferece um 
operador para tipos básicos chamado operador de endereço e referenciado ao símbolo & 
que retorna o endereço. 
 
exemplo: 
# include <stdio.h> 
main() 
{ 
int n = 2; 
printf( “Valor %d, endereço = %u”, n, &n); 
} 
⇒Resultado na tela⇐ 
Valor 2, endereço = 65524 
65524 é o endereço que está variável ocupa na memória. 
 
Código scanf Formato 
%c leia um caracter simples 
%d leia um inteiro 
%e leia um nº notação científica 
%f leia um nº ponto flutuante 
%o leia um inteiro octal 
%s leia uma cadeia de caracteres 
%u leia um decimal sem sinal 
%x leia um hexadecimal 
%l leia um inteiro longo 
 
exemplo: 
# include <stdio.h> 
main() 
{ 
int anos; 
printf( “Digite sua idade: ”); 
scanf(“%f”, &anos); 
} 
⇒Resultado na tela⇐ 
Digite sua idade: 22 
UNAERP Aula 3 
 
 
Laboratório de Programação I – Prof. Dr. Edilson Carlos Caritá – 1º Semestre 2007 
8
Funções de entrada getche() e getch() <conio.h> 
A função scanf() necessita que você pressione <enter> depois de ler um dado pelo teclado. 
As funções getche() e getch() lêem um caracter no instante em que é datilografado, sem 
esperar. 
getche() - lê o caracter do teclado e permite que seja impresso na tela. 
getch() - lê o caracter do teclado e não permite que seja impresso na tela. 
 
exemplo: 
# include <stdio.h> 
# include <conio.h> 
main() 
{ 
char ch; 
printf( “Digite algum caracter: ”); 
ch = getche(); 
printf(“\n A tecla pressionada foi: %c”, ch); 
printf( “\n Digite outro caracter: ”); 
ch = getch(); 
printf(“\n A tecla pressionada foi: %c”, ch); 
} 
⇒Resultado na tela⇐ 
Digite algum caracter: a 
A tecla pressionada foi: a 
Digite outro caracter: b 
A tecla pressionada foi: b

Outros materiais