Académique Documents
Professionnel Documents
Culture Documents
AULA 04
Introduo Linguagem C Atribuio de valores s variveis
Sada de dados
Formatao da sada
Programa inicial
#include <stdio.h> int main ( void ); int main ( void ) { // saida do programa printf ( Fiz meu primeiro programa em C\n ); }
Definio de variveis
Inteiro int Flutuante float Caracter char Cadeia char [ nn ]
Tipo inteiro
#include <stdio.h> int main ( void ); int main ( void ) { // definicao das variaveis
int x, soma_valores;
}
Tipo flutuante
#include <stdio.h> int main ( void );
Tipo caracter
#include <stdio.h> void main ( void );
Tipo cadeia
#include <stdio.h> int main ( void );
Exemplo Completo
#include <stdio.h>
int main ( void ); int main ( void ) { // definicao das variaveis int x; // atribuicao dos dados x = 569; }
Exemplo Flutuante
#include <stdio.h>
int main ( void ); int main ( void ) { // definicao das variaveis float x; // atribuicao dos dados x = 569.734; }
Exemplo Caracter
#include <stdio.h>
int main ( void ); int main ( void ) { // definicao das variaveis char x; // atribuicao dos dados x = t; }
Exemplo cadeia
Diferentemente dos outros tipos, o tipo cadeia no pode ter atribuio direta;
Esta atribuio somente poder ser realizada atravs de funes da biblioteca da linguagem C;
Todas as vezes que estas funes de biblioteca da linguagem C so usadas, necessria a utilizao da seguinte declarao, no inicio do programa :
#include <string.h>
Funes de cadeia
A seguir algumas das funes que podero ser usadas com o tipo cadeia: strcpy ( a, b ) copia a cadeia b na cadeia a Exemplo: strcpy ( x, amarelo );
Exemplo 1
#include <stdio.h> #include <string.h>
int main ( void ); int main ( void ) { // definicao das variaveis char x[10], y[5], t[20]; // atribuicao dos dados strcpy ( x, Maria ); strcpy ( y, sol ); strcpy ( t, x ); strcat ( x, y ); }
Isto feito utilizando-se a declarao de formato dos dados; Em linguagem C esta formatao deve estar inclusa nas declaraes de entrada e de sada dos dados;
Cdigos de formatos
Para cada varivel do programa necessrio que se defina o formato correspondente ao tipo definido para ela; Este formato das variveis definido com os cdigos de formato
Tipo inteiro:
%[n]d
n significa o tamanho do campo, ou seja, quantos dgitos tem o numero incluindo o sinal ( positivo ou negativo ) o sinal [ ] significa que a informao opcional
Tipo flutuante:
%[n.t]f
t significa o tamanho do campo decimal n significa o tamanho do campo, ou seja, quantos dgitos tem o numero incluindo o ponto decimal , o campo t e o sinal do numero
%c %s
Controle da impresso
Todas as linhas de sada necessitam do controle da impresso Isto feito utilizando-se o caractere especial:
\n
Observar que isto s vlido para a impresso de dados e no para a entrada.
A colocao do caractere de controle de sada na instruo de impresso indica que a informao ser impressa e em seguida o computador fica disponvel para imprimir nova informao na linha seguinte que acabou de ser impressa;
A no colocao do caractere de controle de impresso na instruo de sada indica que a prxima informao ser impressa na mesma linha da impresso anterior;
Quando colocado no inicio da instruo de sada, cada \n indica uma linha em branco, antes da impresso da informao;
Quando colocado no fim da instruo de sada, cada \n indica uma linha em branco, aps a impresso da informao;
Quando colocado no meio da instruo de sada, [q] \n indica ( q 1) linhas em branco, entre as informaes impressas;
Sada de dados 1
Sada simples algoritmo: inteiro x imprima ( x )
Visualizao da sada
Suponha que na varivel inteira x esteja armazenado o valor 569 A sada ter a seguinte aparncia: 569
Sada de dados 2
algoritmo: inteiro x x 569 imprima ( x = , x )
Visualizao da sada
A sada ter a seguinte aparncia:
( a linha tracejada no aparece na sada, s para gui-la )
======= x= 569
Sada de dados 3
#include <stdio.h>
int main ( void ); int main ( void ) { // definicao das variaveis int x, soma_valores; // atribuicao dos dados x = 569; soma_valores = -5409; // saida dos dados printf ( valor de x\n ); printf ( x = %5d\n, x ); printf ( valor da soma dos valores\n ); printf ( soma dos valores = %10d\n , soma_valores ); }
Visualizao da sada
A sada ter a seguinte aparncia:
valor de x x = 569 ( 2 espaos em branco antes do numero ) valor da soma dos valores soma dos valores = -5409
( 6 espaos em branco antes do numero )
Ver programa p2
Outra alternativa
// saida dos dados printf ( valor de x\n\n ); printf ( x = %5d\n, x ); printf ( \n\n\nvalor da soma dos valores\n );
Visualizao da sada
Os valores numricos nos incios das linhas no fazem parte da sada, so apenas para guiar o leitor:
1) valor de x 2) 3) x = 569 4) 5) 6) 7) valor da soma dos valores 8) 9) 10) soma dos valores = -5409
Outra alternativa
// saida dos dados
Tipo Flutuante
Sada simples algoritmo: flutuante x x 569.267 imprima ( x ) em linguagem C: float x; x = 569.267; printf ( %f\n, x );
Visualizao da sada
A sada ter a seguinte aparncia:
569.267
Outra alternativa
Visualizao da sada
A sada ter a seguinte aparncia:
Outra alternativa
Visualizao da sada
A sada ter a seguinte aparncia:
Anlise
Qual seria a sada impressa, se fossem utilizadas as seguintes declaraes:
Tipo caractere
Sada simples algoritmo: character x x g imprima ( x ) em linguagem C: char x; x = g; printf ( %c\n, x );
Visualizao da sada
A sada ter a seguinte aparncia: g
Outra alternativa
// definicao das variaveis char letra_1, letra_2; // atribuicao dos valores letra_1 = g ; letra_2 = h ;
// saida dos resultados printf ( letra 1 = %c\n, letra_1 ); printf ( letra 2 = %c\n, letra_2 );
Visualizao da sada
A sada ter a seguinte aparncia: letra 1 = g letra 2 = h
Outra alternativa
A mesma sada poderia ser obtida atravs da seguinte declarao:
Anlise
Qual seria o resultado obtido se esta declarao fosse utilizada:
Tipo cadeia
Sada simples
Visualizao da sada
A sada ter a seguinte aparncia: Unifei
Outra alternativa
#include <stdio.h> #include <string.h> int main ( void );
int main ( void ) { // definicao das variaveis char nome_1[20], nome_2[5], nome_3[30];
// atribuicao dos dados strcpy ( nome_1, Universidade ); strcpy ( nome_2, EFEI ); strcpy ( nome_3, nome_1 ); strcat ( nome_3, nome_2 ); // saida dos dados printf ( nome 1 = %s\n, nome_1 ); printf ( nome 2 = %s\n, nome_2 ); printf ( nome 3 = %s\n, nome_3 ); }
Visualizao da sada
A sada ter a seguinte aparncia: nome 1 = Universidade nome 2 = EFEI nome 3 = UniversidadeEFEI
// saida dos dados printf ( nome 1 = %s\n nome 2 = %s\n nome 3 = %s\n, nome_1, nome_2, nome_3 );