Vous êtes sur la page 1sur 22

Programao I: Introduo a Linguagem C

Rafael Vieira Coelho IFRS Instituto Federal de Educao, Cincia e Tecnologia do Rio Grande do Sul Campus Farroupilha

rafael.coelho@farroupilha.ifrs. edu.br

O C "Case Sensitive"
o C "Case Sensitive", isto , maisculas e minsculas fazem diferena. Se se declarar uma varivel com o nome soma ela ser diferente de Soma, SOMA, SoMa ou sOmA. Da mesma maneira, os comandos do C if e while, por exemplo, s podem ser escritos em minsculas pois seno o compilador no ir interpret-los como sendo comandos, mas sim como variveis.

Nomes de Variveis
As variveis no C podem ter qualquer nome se as condies abaixo forem satisfeitas: 1.o nome deve comear com uma letra ou sublinhado (_) 2.os caracteres subsequentes devem ser letras, nmeros ou sublinhado (_) 3.o nome de uma varivel no pode ser igual a uma palavra reservada, nem igual ao nome de uma funo declarada pelo programador, ou pelas bibliotecas do C 4. uma prtica tradicional do C, usar letras minsculas para nomes de variveis e maisculas para nomes de constantes. Isto facilita na hora da leitura do cdigo

Os Tipos de C
5 tipos bsicos: char int float void double. Para cada um dos tipos de variveis existem os modificadores de tipo. Os modificadores de tipo do C so quatro: signed, unsigned, long e short.

Declarao e Inicializao de Variveis


As variveis no C devem ser declaradas antes de serem usadas A forma geral da declarao de variveis : tipo_da_varivel lista_de_variveis; As variveis da lista de variveis tero todas o mesmo tipo e devero ser separadas por vrgula. Por exemplo: char ch, letra; long count; float pi;

Inicializao de Variveis
Podemos inicializar declarao. variveis no momento de sua

Para fazer isto podemos usar a forma geral tipo_da_varivel nome_da_varivel = constante; Quando o C cria uma varivel ele no a inicializa Exemplos de inicializao: char ch='D'; int count=0; float pi=3.141;

Operadores

Operadores Relacionais e Lgicos

Programa Principal em C
int main(int argc, char *argv[]) { return 0; }

Entrada/Sada
Os caracteres so um tipo de dado: char. Para indicar um caractere de texto usamos aspas simples. int main (int argc, char *argv[]) { char Ch; Ch='D'; printf ("%c",Ch); return(0); }

Leitura de um Caractere
Muitas vezes queremos ler um caractere fornecido pelo usurio. Para isto, usa-se a funo getch(). Ela retorna o caractere pressionado. int main(int argc, char *argv[]) { char Ch;

Ch=getch(); printf ("Voce pressionou a tecla %c",Ch); return(0); }

Utilizando Scanf
int main (int argc, char *argv[]) { char Ch; scanf("%c", &Ch); printf ("Voce pressionou a tecla %c",Ch); return 0; }

A principal diferena da verso que utiliza getch() para a verso que no utiliza getch() que no primeiro caso o usurio simplesmente aperta a tecla e o sistema l diretamente a tecla pressionada. No segundo caso, necessrio apertar tambm a tecla <ENTER>.

Varivel Literal (Strings)


No C uma string um vetor de caracteres: char nome[tamanho];

Utilizando Printf
A funo printf() tem a seguinte forma geral: printf (string_de_controle,lista_de_argumentos);

Cdigo %d %f %c %s %%

Significado Inteiro Float Caractere String Coloca na tela um %

Cdigos Especiais
Os cdigos especiais (barra invertida) so apresentados abaixo e tambm pode ser inseridos na expresso de controle. Veja a descrio de cada um deles: Cdigo \n \t \b \ \\ \0 \a Descrio Nova linha Tab Retrocesso Aspas Barra Nulo Sinal de Alerta Sonoro

Exemplos de Printf
Vamos ver alguns exemplos de printf() e o que eles exibem: printf ("Teste %% %%") -> Teste % % printf ("%f",40.345) -> 40.345 printf ("Um caractere %c e um inteiro %d",'D',120) -> "Um caractere D e um inteiro 120 printf ("%s e um exemplo","Este") -> Este e um exemplo printf ("%s%d%%","Juros de ",10) -> Juros de 10%

Comparando C com Algoritmo


Este algoritmo apresenta o resultado da soma de 4 e 6. Algoritmo
VAR A,B,C: inteiro INICIO A<-4 B<-6 C<-A+B escreva (C) FIM

EmC
int main(int argc, char *argv[]) { int a,b,c; a=4; b=6; c=a+b; printf("%d",c); return 0; }

Este algoritmo solicita ao usurio que digite dois nmeros e apresenta a soma deles.
Algoritmo VAR A,B,C: inteiro INICIO escreva (Digite dois nmeros) leia (A,B) C<-A+B escreva (C) FIM EmC int main(int argc, char *argv[]) { int a,b,c; printf("Digite dois numeros"); scanf("%d%d",&a,&b); c=a+b; printf("O resultado e %d", c); return 0; }

scanf(%d%d,&a,&b);

scanf equivale ao ler do algoritmo. %d%d avisa que sero lidos dois nmeros inteiros & l ponteiros (uma varivel que armazena endereos de memria)

Printf(Oresultado%d,c);

O valor da varivel ser apresentado onde est o %d

Operadores
O operador / (diviso) quando aplicado a variveis inteiras, nos fornece o resultado da diviso inteira; quando aplicado a variveis em ponto flutuante nos fornece o resultado da diviso "real". Assim seja o seguinte trecho de cdigo: int a = 17, b = 3; int x, y; float z = 17. , z1, z2; x = a / b; y = a % b; z1 = z / b; z2 = a/b; ao final da execuo destas linhas, os valores calculados seriam x = 5, y = 2, z1 = 5.666666 e z2 = 5.0

Exerccios
1) O que faz o seguinte programa em C? main() { int i =2; printf ("\n O valor de i = %d ", i); } (a) (b) (c) (d) Nada Imprime: O valor de i = 2 Imprime: \n O valor de i = %d Pula para a prxima linha e imprime: O valor de i = 2

Exerccios
2) O comando printf ("%s%d%%","Juros de ",10); imprime: a. Juros de 10% b. %s%d%% Juros de 10 c. % Juros de 10 d. 10 Juros de e. Nenhuma das anteriores

Exerccios
3) Escreva um programa que declare uma varivel inteira e atribua o
valor 10 a ela. Declare outras 5 variveis no programa principal e atribua os valores 20, 30, ..., 60 a elas. Declare 6 variveis caracteres e atribua a elas as letras c, o, e, l, h, o . Finalmente, o programa dever imprimir, usando todas as variveis declaradas: As variaveis inteiras contem os numeros: 10,20,30,40,50,60 O animal contido nas variaveis caracteres: o coelho