Linguagem C Hello World Palavras Reservadas Tipos de Dados
Transcrição
Linguagem C Hello World Palavras Reservadas Tipos de Dados
Hello World void main() { printf("Hello world!\n"); } Linguagem C main é a função principal, a execução do programa começa por ela printf é uma função usada para enviar dados para o vídeo Palavras Reservadas auto break case char continue default do double else entry extern float for goto if int long register return sizeof short static struct switch typedef union unsigned while Operadores Aritméticos - subtração + adição * multiplicação / divisão de inteiros e reais % resto da divisão -- decremento ++ incremento Tipos de Dados Tipo Bits Faixa Char 8 -128 a 127 int 16 -32768 a 32767 unsigned int 16 0 a 65535 signed int 16 -32768 a 32767 long int 32 -2147483648 a 147483648 float 32 3.4e-38 a 3.4e+38 double 64 1.7e-308 a 1.7e+308 Os tipos podem mudar com o compilador Pré e pós incremento e pré e pós decremento Exemplo: x=10; //pré incremento y=++x; Resultado: x=11, y=11 Exemplo: x=10; //pós incremento y=x++; Resultado: x=11, y=10 1 Operadores Relacionais Operadores Lógicos && e | | ou ! negação > maior que < menor que >= maior ou igual <= menor ou igual == igual a != diferente de – Exemplo: if (10 < i && i <= 20) { ... } Operadores de Atribuição Operadores Manipulação de Bits & e | or >> desloca à direita << desloca à esquerda ^ ou exclusivo ~ negação (complemento de 1) = +=, -=, *=, /=, %= &=, |=, != <<= , >>= , &=, ^=, |= – A expressão E1 (lado esquerdo) deve ser modificável (lvalue) E1=E2 – Uma operação de atribuição retorna o valor atribuído i=(j=3); Operador Condicional ?: Em Pascal: IF A>B THEN C:=A ELSE C:=B; Em C: if (a>b) c=a; else c=b; Também em C: c=a>b?a:b //j=3 e i=3 Operador , (vírgula) Exemplo 1: i=2, j=(3, 4, 5); i=2, j=3, 4, 5; //i=2 e j=5 //i=2 e j=3 Exemplo 2: i=2, 3, 4, j=5; if (i==2, j==4) //i=2 e j=5 a condição do if é falsa, pois o valor retornado corresponde ao j==4 Exemplo 3: i=(j=2, k=3); //j=2, k=3 e i=3 2 Definição de Funções tipo identificador(lista de argumentos) { declaração de variáveis locais; comando ou bloco de comandos; } onde: tipo – tipo de dado retornado pela função identificador – nome da função lista de argumentos – lista dos parâmetros Formato de um Programa Completo em C declaração de variáveis globais função 1 declaração de variáveis globais função 2 ... declaração de variáveis globais função n uma das funções deve ser a função Exemplo de Função /* Eleva x a n-ésima potência */ int pot(int x, int n) { int i, p; p=1; for (i=1; i<=n; i++) p*=x; return p; } Exemplo de um Programa int pot(int x, int n) { int i, p; p=1; for (i=1; i<=n; i++) p*=x; return p; } void main() { int x, p; x=10; p=pot(x, 2); printf(“%d\n”, p); } main (início do programa) break continue Salta para a primeira instrução após o fim do laço (bloco de repetição) mais interno. A condição do laço não é verificada #include <stdio.h> void main() { int i, j; for (i=1; i<=3; i++) { j=0; while (j++<=3) { if (j==2) break; printf("%d, %d\n", i, j); } } } Retorna para início do laço mais interno. A condição do laço é verificada antes de continuar #include <stdio.h> No vídeo: 1, 1 2, 1 3, 1 void main() { int i, j; for (i=1; i<=3; i++) { j=0; while (j++<=3) { if (j==2) continue; printf("%d, %d\n", i, j); } } } No vídeo: 1, 1 1, 3 1, 4 2, 1 2, 3 2, 4 3, 1 3, 3 3, 4 3 Função printf() Envia texto e valores formatados para o vídeo Formato: printf(formatação, arg1, arg2, ...); onde: formatação – é uma cadeia de caracteres contendo textos e formatações que serão utilizadas para apresentar os argumentos (argi) argi – é a expressão que terá seu valor apresentado no vídeo printf() – Formatação O texto de formatação pode conter dois tipos de objetos: 1. Texto que será apresentado literalmente 2. Declarações de conversões – % [comprimento] [.prec] [F|N|h|l|L] tipo onde: Declarações de Conversões %c %d %i %e %f %o %s %x %p %g %% %u caractere único inteiro decimal inteiro decimal número com ponto flutuante número com ponto flutuante número octal string número hexadecimal ponteiro usa %e ou %f, aquele que for menor Imprime % decimal sem sinal Caracteres Especiais \b \f \n \r \t \’ \0 \\ \xnn Retrocesso (BackSpace) Nova página (Form Feed) Linha nova (Line Feed) Retorno do carro (Carriage Return) Tabulação horizontal Caractere apóstrofo Caractere nulo ou fim de string Caractere barra invertida Caractere nn em hexadecimal comprimento – número mínimo de caracteres ocupados pelo formato prec – número mínimo de caracteres (em inteiros) número de casas decimais (em reais) N = near pointer F = far pointer h = short int l = long L = long double Usando printf() void main() { float x; x=3.141592; printf(“%5.2f!”, x); printf(“%3.2f\n”, x); } No vídeo obteremos: _3.14!3.14 Espaço printf(“linha1\nlinha2”); printf(“\nlinha3\n”); No vídeo: linha1 linha2 linha3 Função scanf( ) Lê valores digitados pelo usuário Formato: scanf(formatação, arg1, arg2, ...); onde: formatação – é uma cadeia de caracteres contendo formatações que serão utilizadas para ler os dados argi – é o endereço (ponteiro) da variável que receberá os dados lidos 4 Função scanf( ) void main() { int x, a; scanf(“%d%x”, &x, &a); printf(“x=%d, a=%d\n”, x, a); } No vídeo: 33 Digitado pelo usuário 7f x=33, a=127 Função scanf( ) void main() { int x, a; scanf(“%d,%x”, &x, &a); printf(“x=%d, a=%d\n”, x, a); } No vídeo: 33,7f Digitado pelo usuário x=33, a=127 Função scanf( ) void main() { int x, a, y; scanf(“%d,%x”, &x, &a); scanf(“%d;%x”, &x, &a); scanf(“;%x”, &y); printf(“x=%d, a=%d, y=%d\n”, x, a, y); } No vídeo: 33;7f Digitado pelo usuário x=33, a=<lixo>, y=127 Atenção: se um símbolo diferente for digitado pelo usuário, os scanf’s seguintes serão ignorados até que um scanf com a formatação iniciada pelo símbolo seja executado. 5
Documentos relacionados
Lista03 Extra
6. Escreva uma função transporMatriz que receba por parâmetro uma matriz 4 × 5 e outra matriz 5 × 4. A função deve transpor a matriz 4 × 5 e armazenar os resultados na matriz 5 × 4. 7. Utiliza...
Leia mais