Você está na página 1de 11

Curso: Sistemas de Informao Disciplina: Introduo Programao

Linguagem C: Variveis Primeiramente com relao aos nomes das variveis (e tambm das funes) em C os identificadores podem ter qualquer nome se duas condies forem satisfeitas: O nome deve comear com uma letra ou sublinhado ( _ ) Os caracteres subsequentes devem ser letras, nmeros ou sublinhado ( _ ). Alm dessas duas condies acima, ainda h mais duas restries: O nome de uma varivel no pode ser igual a uma palavra reservada (palavra-chave), nem igual ao nome de uma funo declarada pelo programador, ou pelas bibliotecas do C. Variveis de at 32 caracteres so aceitas. bom sempre lembrar que C uma linguagem "case sensitive" e, portanto deve-se prestar ateno s maisculas e minsculas. Declaraes de Variveis Todas as variveis devem ser declaradas antes de serem usadas. Uma declarao especifica um tipo, e seguida por uma lista de uma ou mais variveis daquele tipo, tal como nos seguintes exemplos: int inicio, fim, numero; float valor; char c; Inicializao de Variveis (Atribuio) Voc pode dar maioria das variveis em C um valor, no mesmo momento em que elas so declaradas, ou seja, pode inicializar a varivel juntamente com sua declarao, colocando um sinal de igual ( = ) e uma constante aps o nome da varivel. A forma geral de uma inicializao : tipo nome_da_varivel = constante; Alguns exemplos de inicializar juntamente ao declarar so: char letra = a; int valor = 0; float preco = 123.23; A linguagem C permite que voc atribua o mesmo valor a muitas variveis usando atribuies mltiplas em um nico comando. Por 1

exemplo, esse fragmento de programa abaixo, atribui a x, y e z o valor 0: x = y = z = 0; Tipos de Dados A) Tipos Bsicos: os dados podem assumir cinco tipos bsicos em C que so: char: Caractere - o valor armazenado um caractere. Caracteres geralmente so armazenados em cdigos (usualmente o cdigo ASCII). int: Nmero inteiro o tipo padro e o tamanho do conjunto que pode ser representado normalmente depende da mquina em que o programa est rodando. float: Nmero em ponto flutuante de preciso simples. So conhecidos normalmente como nmeros reais. double: Nmero em ponto flutuante de preciso dupla. void: Este tipo serve para indicar que um resultado no tem um tipo definido. Uma das aplicaes deste tipo em C criar um tipo vazio que pode posteriormente ser modificado para um dos tipos anteriores. O tipo void declara explicitamente uma funo que no retorna valor algum. B) Modificadores dos Tipos Bsicos: modificadores podem ser aplicados a estes tipos. Estes modificadores so palavras que alteram o tamanho do conjunto de valores que o tipo pode representar, podem ser: short, long, signed, unsigned. Sequncia short int signed int signed short int unsigned short int int long int signed long int unsigned int unsigned long int char signed char unsigned char bool float double long float Bytes ocupados 2 2 4 4 1 1 1 4 8 Faixa (ou intervalo) -32.768 a 32.767 0 a 65.535 -2.147.483.648 at 2.147.483.647 0 a 4.294.967.295 -128 a 127 0 a 255 true ou false 1,2e-38 a 3,4e+38 2,2e-308 a 1,8e+308

Funo printf( ) As funes scanf( ) e printf( ) so respectivamente funes de entrada e sada de dados, ou seja, scanf( ) uma funo de leitura das informaes (do teclado) e printf ( ) uma funo de escrita das informaes. A funo printf( ) tem a seguinte forma geral: printf (string_de_controle, lista_de_argumentos); Teremos, na string de controle, uma descrio de tudo que a funo vai colocar na tela. A string de controle mostra no apenas os caracteres que devem ser colocados na tela, mas tambm quais as variveis e suas respectivas posies. Isto feito usando-se os cdigos de controle, que usam a notao %. Na string de controle indicamos quais, de qual tipo e em que posies esto as variveis a serem apresentadas. muito importante que, para cada cdigo de controle, tenhamos um argumento na lista de argumentos. Resumindo, a funo printf ( ) converte, formata e imprime seus argumentos na sada padro (normalmente a tela) sob o controle da string_de_controle. Na tabela a seguir so apresentados alguns dos cdigos %:

Exemplos: printf(Resultado da soma = %f, soma); printf (%f, soma); printf ( %d mais %d igual a %d, a,b,c); Funo scanf() A funo scanf ( ) tem a seguinte forma geral: scanf (string_de_controle, lista_de_argumentos); A funo scanf ( ) l caracteres da entrada padro (normalmente o teclado), interpretando-os de acordo com o formato especificado na string_de_controle, e armazena os resultados nos argumentos descritos. Exemplos: scanf(%d, &a); scanf(f, &b); scanf (%d %f, &a,&b); Operadores Aritmticos Realizam as operaes aritmticas normais sobre os seus operandos. Podem ser utilizados com qualquer tipo de dados, exceto o resto da diviso, o qual no pode ter operandos em ponto flutuante. Operador = + * / % Funo Atribuio Soma Subtrao Multiplicao Diviso Resto da Diviso

Exemplos:
{ int a, b ,c; float x, y, z; a=20; b=30; c = a + b; x=3; y=4; z=x+y; printf("\n a=%d mais b=%d vale %d unidades", a,b,c); printf("\n x=%f mais y=%f vale %f unidades", x,y,z); printf("\n\nFim \n\n"); system (PAUSE); return 0; } { int

a, b, c; float x, y, z; printf("\nForneca o valor de a: "); scanf("%d",&a); printf("\nForneca o valor de b: "); scanf("%d",&b); // calculo com os valores lidos pelo teclado c = a + b; printf("\nForneca o valor de x: "); scanf("%f",&x); printf("\nForneca o valor de y: "); scanf("%f",&y); //calculo com os valores lidos pelo teclado z = x + y; printf("\n a=%d mais b=%d vale %d unidades",a,b,c); printf("\n x=%f mais y=%f vale %f unidades",x,y,z); printf("\nFim \n\n "); system (PAUSE); return 0;

} { float numero; printf("\n Fornea o valor de um numero:"); scanf("%f",&numero); printf("\n Numero= %.2f",numero); printf("\n Numero= %.3f",numero); system (PAUSE); return 0; }

Operadores Relacionais Os operadores relacionais so utilizados em expresses condicionais para comparar o valor de duas expresses. Operador > >= < <= == != Funo Maior que Maior ou Igual a Menor que Menor ou igual a Igual a Diferente de

Operadores Lgicos Os operadores lgicos so utilizados para conectar expresses lgicas sendo geralmente utilizados em expresses condicionais. Operador && || ! Funo AND lgico OR lgico NOT lgico

Comandos de Deciso de Fluxo

IF - ELSE
Sintaxe:
if(condio) instrucao_paraverdadeiro; else instrucao_parafalso;

Vejamos com vrias instrues: Sintaxe:


if(condio) { instrucao1_paraverdadeiro; instrucao2_paraverdadeiro; instrucao3_paraverdadeiro; . . . } else { instrucao1_parafalso; instrucao2_parafalso; . . . }

Exemplo: Faa um programa C que receba um nmero inteiro, verifique e mostre se ele par ou mpar. Se o nmero for par mostre tambm a metade deste nmero. { int num; printf("Digite um numero: "); scanf("%d", &num); if(num%2==0) { printf("%d: numero par.\n", num); printf("Metade do numero: %d\n", num/2); } else printf("%d: numero impar\n", num); system(PAUSE); return 0; }

SWITCH
Sintaxe:
switch (expresso) { case constante1: comandos; break; case constante2: comandos; break; . . . default: comandos; }

{ float sal; int cod; printf("Cdigo do departamento:"); scanf("%d", &cod); printf("Salrio do funcionrio:"); scanf("%f", &sal); switch (cod) { case 1: printf(Departamento de Compras); printf("Salrio com bonus: %.2f\n", sal+200); break; case 2: printf(Departamento de Vendas); printf("Salrio com bonus: %.2f\n", sal+300); break; case 3: printf(Departamento Financeiro); printf("Salrio com bonus: %.2f\n", sal+400); break; case 4: printf(Departamento de Informtica); printf("Salrio com bonus: %.2f\n", sal+500); break; default: printf(\nDepartamento inexistente\n); } system(PAUSE); return 0; }

Comandos de Repetio

Comando while
Sintaxe:
while(condio) instrucao;

Executa a instruo enquanto a condio for verdadeira. Como a condio avaliada ao incio de cada passagem, a instruo no ser executada nenhuma vez se a condio for falsa, porque no entrar no lao. Quando mais de uma instruo for utilizada, devem estar agrupadas entre { } . Sintaxe:
while(condio) { instrucao1; instrucao2; instrucao3; . . . }

Faa um programa que leia uma seqncia de nmeros diferentes de zero e mostre a soma dos nmeros positivos e a soma dos nmeros negativos. A seqncia de nmeros encerra quando for digitado o nmero 0. { int num, somapos=0, somaneg=0; printf("Digite um numero: "); scanf("%d", &num); while(num!=0) { if(num<0) somaneg=somaneg+num; else somapos=somapos+num; printf("Digite um numero: "); scanf("%d", &num); } printf("Soma dos positivos: %d\n", somapos); printf("Soma dos negativos: %d\n", somaneg); system(PAUSE); return 0; }

Comando dowhile
Sintaxe:
do instrucao; while(condio);

Executa a instruo enquanto a condio for verdadeira. Como a condio avaliada no final de cada passagem, a instruo executada pelo menos uma vez. Quando mais de uma instruo for utilizada, devem estar agrupadas entre { } . Sintaxe:
do { instrucao1; instrucao2; instrucao3; . . . } while(condio); Faa um programa que leia uma seqncia de nmeros diferentes de zero e mostre a soma dos nmeros positivos e a soma dos nmeros negativos. A seqncia de nmeros encerra quando for digitado o nmero 0. { int num, somapos=0, somaneg=0; do { printf("Digite um numero: "); scanf("%d", &num); if(num<0) somaneg=somaneg+num; else somapos=somapos+num; } while(num!=0); printf("Soma dos positivos: %d\n", somapos); printf("Soma dos negativos: %d\n", somaneg); system(PAUSE); return 0; }

10

Comando for
Sintaxe:
for(exp1;exp2;exp3) instrucao;

Define um lao for-next onde exp1 a expresso executada antes de entrar no lao. Usado geralmente para atribuir um valor inicial para a varivel de controle do lao. A expresso exp2 avaliada no incio de cada repetio, sendo que o lao ser executado enquanto exp2 for verdadeira. Ao final de cada passagem, exp3 executada. Normalmente usa-se para incrementar (ou decrementar a varivel de controle). Quando mais de uma instruo for utilizada, devem estar agrupadas entre { } . Sintaxe:
for(exp1;exp2;exp3) { instrucao1; instrucao2; instrucao3; . . . }

Faa um programa em C que leia um nmero inteiro, maior que zero e liste os nmeros inteiros de 1 at o nmero lido. { int x, i; printf("Digite um numero maior que zero:\n"); scanf("%d", &x); for(i=1; i<=x; i=i+1) printf("%d\n", i); system(PAUSE); return 0; }

11

Você também pode gostar