Unesp. Linguagem C: Conceitos Básicos. Introdução à Programação em C. Prof. Dr. G. J. de Sena CAMPUS DE GUARATINGUETÁ FACULDADE DE ENGENHARIA

Tamanho: px
Começar a partir da página:

Download "Unesp. Linguagem C: Conceitos Básicos. Introdução à Programação em C. Prof. Dr. G. J. de Sena CAMPUS DE GUARATINGUETÁ FACULDADE DE ENGENHARIA"

Transcrição

1 Unesp UNIVERSIDADE ESTADUAL PAULISTA CAMPUS DE GUARATINGUETÁ FACULDADE DE ENGENHARIA Introdução à Programação em C Linguagem C: Conceitos Básicos Prof. Dr. G. J. de Sena Edição: 2011

2 Capítulo 2 Linguagem C: Conceitos Básicos 2.1. Estrutura de um Programa em C Um programa C é constituído por uma ou mais funções, devendo possuir uma função de abertura, a saber, a função main(). Elementos de uma função: (a) Cabeçalho (header): da forma nome(<argumentos>); Onde os argumentos são opcionais. (b) Lista de declarações dos argumentos. (c) Bloco de instruções. Pontos a observar na codificação de programas em C: Caracter(es) Significado { e } Delimitadores para blocos de instruções. ; Designa o final de uma instrução elementar. /* e */ Delimitadores de comentários: o texto delimitado pelos pares /* e */ é um comentário, sendo ignorado pelo compilador. // Designa o início de um comentário: o texto que segue o par // e continua até o final da linha é um comentário. Exemplo 1 : Programa para cálculo da área de um circulo. Codificação em C: // Calculo da área de um círculo // Programador: Sena Ano: 2010 #include <stdio.h> int main(void) { /* Declarações de Variáveis */ float raio, area; /* entrada do raio*/ 1 O aluno não deve se preocupar neste ponto em entender todos os programas apresentados, mas apenas em ter uma visão geral da linguagem. Os comandos e estruturas apresentados nestes exemplos iniciais serão explicados de modo detalhado mais adiante durante o curso.

3 } printf ("Digite o valor do raio: "); scanf ("%f", &raio); /* processamento: calculo da área*/ area = * raio * raio; /* saída da área */ printf ( "Area = %f", area ); /* pausa p/ mostrar resultado */ system("pause"); Tela de execução: Note-se que a seqüência de escape, \n, pode ser inserida no comando de saída, para forçar o avanço para uma nova linha: printf ( "\narea = %f \n", area ); Tela de execução: A instrução #include antes do cabeçalho da função é uma instrução para o préprocessador da linguagem, sendo tratada antes do processamento do programa. Estas instruções se referem a arquivos especiais que devem ser incluídos e que contêm informações especificas necessárias para a utilização de funções de biblioteca, providas pelo processador da linguagem. A seguir são mostrados exemplos de instruções #include: #include <stdio.h> #include <math.h> #include <stdlib.h> Programa para cálculo da área de um círculo, utilizando a função pow (de math.h) para calcular o quadrado do raio. // Calculo da área de um círculo utilizando a função // pow(x,y), que calcula e retorna o valor de x^y // Programador: Sena Ano: 2010 #include <stdio.h>

4 #include <math.h> int main(void) { /* Declarações de Variáveis */ float raio, area; /* entrada do raio*/ printf ("Digite o valor do raio: "); scanf ("%f", &raio); /* processamento: calculo da área*/ area = * pow(raio,2); // pow(raio,2) = raio^2 /* saída da área */ printf ( "\narea = %f \n", area ); // \n: avança próx. linha /* pausa p/ mostrar resultado */ system("pause"); } Tela de execução: Outras observações relativas à codificação de programas em C: (a) A linguagem C é sensível ao caixa, ou seja, letras maiúsculas e minúsculas são consideradas distintas. Assim, Area e area são identificadores distintos em C. (b) Observe-se, na estruturação de um programa em C, a presença de um recuo ( endentamento ), antes da codificação dos comandos e declarações no bloco de instruções: os comandos e declarações são codificados com um pequeno deslocamento para a direita. (c) Note-se a presença de comentários objetivando documentar o código do programa. Programa para cálculo da área de um círculo, utilizando uma função adicionalmente à função main(). // Calculo da área de um círculo, om a utilização de // uma função implementada pelo programador // Programador: Sena Ano: 2010 # include <stdio.h> # include <math.h> # define PI // definição da constante PI // função principal int main (void) { // declaração de variáveis e funções float raio, area; float processa (float raio); // função para calculo da área // entrada de dados printf("\n\traio? "); // seqüência \t: tabulação scanf ("%f", &raio);

5 /* Estrutura Condicional: a área só é calculada para um valor de raio válido (> 0) */ if (raio < 0) ; // não faz nada: comando "vazio" else // raio válido { area = processa (raio); // chama função printf("\n\narea = %f\n", area); // saida área } system("pause"); // pausa p/ visualização resultado } // função para cálculo da área float processa (float r) { float a; a = PI * pow(r,2); // calcula return(a); // retorna o valor calculado } Note-se a utilização de uma estrutura condicional para verificar se o raio fornecido é válido (> 0). Tela de execução: Modificação do programa do exemplo anterior, para cálculo da área de vários círculos. // Calculo da área de vários círculos // Programador: Sena Ano: 2010 # include <stdio.h> # include <math.h> # define PI // definição da constante PI // função principal int main (void) { // declaração de variáveis e funções float raio, area; int cont, n ; // contador (cont) e nro de círculos (n) float processa (float raio); // entrada de dados printf ("\nquantos circulos? "); scanf ("%d", &n); // processamento for (cont = 1 ; cont <= n ; ++ cont) /* Repetição */ { /* entrada do raio */ printf("\n\tcirculo %d: raio? ", cont); scanf ("%f", &raio); /* Laço Condicional */ if (raio < 0); // comando "vazio"

6 else // raio válido { area = processa (raio); // chama função printf("\n\narea = %f\n", area); // saida área } } system("pause"); // pausa p/ visualização resultado } // função para cálculo da área float processa (float r) { float a; a = PI * pow(r,2); // calcula return(a); // retorna o valor calculado } Tela de execução: 2.2. Fundamentos Conjunto de Caracteres Letras: A... Z, a... z. Dígitos: Caracteres Especiais:! * + \ " < # ( = { > % ) ~ ; } / ^ - [ :,? & _ ]. b Seqüências de Escape : \b, \n (para nova linha) e \t (para tabulação) Identificadores e Palavras Chave

7 Um identificador é um nome dado a elementos de um programa tais como variáveis, funções e matrizes. Formação: letras, dígitos e o caractere _ (considerado como letra). O primeiro caractere deve ser necessariamente alfabético (sendo permitido também o _). Exemplos válidos: X y24 TaxaDeJuros _saldo TABELA_EXEMPLO Xf Soma Exemplos não válidos: 4th "nome" soma-1 juro final raio??raio O comprimento permitido para um identificador é de, normalmente, até 31 caracteres 2 (de acordo com o padrão ANSI: American National Standaros Institute, que é o comitê responsável pela padronização de linguagens). Palavras-Chaves (reservadas): não devem ser utilizadas como identificadores em um programa. Alguns exemplos de palavras reservadas da Linguagem C são apresentados na tabela a seguir. auto extern sizeof break float static case for struct char goto switch const if typedef default long union do register unsigned double return void else short volatile enum signed while Tipos de Dados Básicos Os tipos de dados básicos da Linguagem C são os apresentados na tabela a seguir. A coluna Memória especifica a quantidade de memória necessária, em bytes, para armazenar um valor de um determinado tipo. Tipo Descrição Memória int Valor Inteiro 2 bytes 2 O comprimento normalmente não representa uma preocupação prática, pois dificilmente se trabalha com nomes de identificadores muito longos.

8 char Caractere 1 byte float double Numero de Ponto Flutuante (precisão simples) Numero de Ponto Flutuante (precisão dupla) 4 bytes 8 bytes Os qualificadores podem ser utilizados para a ampliação de alguns dos tipos de dados básicos. A tabela a seguir ilustra a utilização de qualificadores com o tipo int. short long signed unsigned (int) Constantes As constantes podem ser inteiras, de ponto flutuante, caractere, ou strings (cadeias de caracteres). a) Constantes Inteiras Exemplos: (o caractere - é um operador mudando o sinal da constante) 0900 (constante inválida, pois o primeiro dígito deve ser diferente de 0) Constantes unsigned e long (int): Exemplos: 5000u l ul (Unsigned) (Long) (Unsigned Long) Os tipos das constantes são caracterizados pelos sufixos adicionados aos números: u ou U(unsigned), l ou L(long) e ul ou UL (unsigned long). b) Constantes de Ponto Flutuante Uma constante de ponto flutuante é um numero na base 10 que contém um ponto decimal ou um expoente (ou ambos).

9 Exemplos: Constantes válidas: E e e-24 Constantes inválidas (caractere incorreto sublinhado): 1 3, E E 20 5 Codificações possíveis para 3 10 : e5 3e+5 3E5 3.0e+5.3e6 300e3 Faixa de variação (aproximada) para valores dos tipos float (precisão simples) e double (precisão dupla): Precisão simples: 38 3,4 10 a 38 3,4 10 0,0 38 3,4 10 a 3, Precisão dupla: 308 1,7 10 a 308 1,7 10 0, ,7 10 a 1, c) Constantes Caracteres São formadas por caracteres do conjunto de caracteres do computador, delimitados por apóstrofos (aspas simples: '). Exemplos: 'A', 'X', 'a', '3', '$', ' ',... Os valores das constantes caracteres correspondem aos valores dos códigos ASCII correspondentes aos caracteres. A tabela a seguir apresenta os valores de algumas constantes caracteres Valores de algumas constantes caracteres: Constante Valor (código ASCII)

10 'A' 65 'B' 66 'C' 67 'a' 97 'z' 122 '$' 36 '&' 38 Seqüências de Escape : normalmente comparecem em constantes strings, como será visto mais adiante. Caractere Seqüência de escape Campainha \a Tabulação Horizontal \t Tabulação Vertical \v Nova Linha \n Carriage Return \r Aspas (") \" Apostrofo(') \' Interrogação (?) \? \ \\ Nulo \0 Observações: cada seqüência de escape, como o '\n' por exemplo,é considerado como um caractere na Linguagem C. A seqüência '\0', caractere nulo, corresponde ao caractere que é inserido no final de cada string (cadeia de caracteres), como será visto mais adiante. d) Constantes Strings Uma constante string é uma cadeia de caracteres delimitada por aspas ("..."). Exemplos: "Verde" "Guaratinguetá"

11 "Linha1 \n Linha2 \n Linha3" A constante string no comando printf a seguir faz uso de seqüências de escape para que aspas (") possam ser incluídas na constante: Printf("\t Pressione a tecla \"Return\" para continuar\n"); O compilador da Linguagem C acrescenta um caractere nulo ('\0') ao final de toda constante string. A constante string "A" consiste, de fato, de 2 caracteres, a saber: ' A ','\0', ou seja, consiste do caractere 'A' seguido de um caractere nulo ('\0'). Deve-se estar atento para não confundir os diferentes tipos de elementos providos pela linguagem C. Estude as diferenças entre os exemplos de elementos apresentados na tabela a seguir. Exemplo 'A' "A" A Significado Constante caractere Constante string Identificador 3 Constante numérica (inteira) '3' Constante caractere Declarações de variáveis Declarações de variáveis são efetuadas de acordo com a forma geral a seguir: <tipo> <lista de variáveis>; onde: <tipo> corresponde ao tipo do valor que pode ser armazenado nas variáveis que estão sendo declaradas. Qualificadores podem ser utilizados. <lista de variáveis> é uma lista contendo uma ou mais variáveis, separadas por vírgulas. O ponto-e-vírgula no final separa esta declaração da próxima instrução do programa. Exemplos 3 : /* Declarações de Variáveis: tipos básicos */ 3 No ambiente Dev-C++ os tipos aparecem em negrito no código de um programa.

12 int a,b,c; /*Tipo básico inteiro */ float raiz1, raiz2; /*real de precisão simples */ char flag,texto[80]; /* texto vetor: vetor com 80 elementos tipo caractere */ /* Declarações de Variáveis: qualificadores */ short int a,b,c ; long int r,s,t; int p,q; Ou, de forma mais simples: short a,b,c; long r,s,t; int p,q; /* Declarações de Variáveis: tipos, qualificadores */ int a1, b1; unsigned xa, yb; double r1, r2; /* ou long float 4 r1,r2; */ Valores iniciais podem ser atribuídos às variáveis nas mesmas instruções em que são declaradas. Estes valores podem ser alterados durante a execução do programa em que as variáveis são declaradas. /* declarações de variáveis: valores iniciais */ int d=20; char asterisco = '*'; float result = 0.0; double precis = e-6; Constantes Simbólicas Uma constante simbólica é um nome dado a uma seqüência de caracteres, podendo ser utilizado no código do programa em que foi definida para designar aquela seqüência. Constantes simbólicas podem ser empregadas para representar constantes numéricas, caracteres ou constantes do tipo string. Na fase de compilação, cada ocorrência de uma constante simbólica é substituída pela seqüência de caracteres utilizada na sua definição. A definição de uma constante simbólica normalmente ocorre no inicio do programa, tendo a forma geral: onde: #define <nome_constante> <texto> 4 Não permitido no Dev-C++.

13 <nome_constante> identificador para a constante, é normalmente escrito em letras maiúsculas. <texto> seqüência de caracteres de definição da constante. Exemplos: // Definiçãqo de Constantes #define TAXA 0.15 #define PI #define VERDADE 1 #define FALSO 0 #define AMIGO "Professor" Observações: (i) Considere o trecho de programa a seguir: #define PI float raio, area;... // emprego de constante simbólica area = PI * raio * raio;... Após a compilação, a instrução referente ao cálculo da área se torna: area = * raio * raio; Observe-se que a substituição é literal, ou seja, se no trecho de programa acima a constante fosse definida como segue: #define PI ; Após a compilação, a instrução referente ao cálculo da área se torna: area = ; * raio * raio; (ii) A substituição do texto não ocorre se a constante comparece em uma cadeia de caracteres ( string ). (iii) A definição de uma constante simbólica é uma característica incluída no préprecessador C, que é o programa responsável pelo primeiro passo na tradução de um programa C Operadores e Expressões a) Introdução a Expressões

14 Exemplos: Expressões Simples : a+b x = y c=a+x x >= b x == y ++i (atribuição) (teste de igualdade) (incremento) b) Expressões Aritméticas b.1) Operadores aritméticos São os seguinte: +, -, *, /, %. As seguintes observações se aplicam a estes operadores: (i) Operador %: Retorna o resto da divisão inteira. (ii) Exponenciação em C: Efetuada com a utilização da função pow, como será descrito mais adiante neste capítulo. (iii) a/b, com a e b inteiros: Divisão inteira (quociente truncado). (iv) a % b: Os operandos a e b devem ser inteiros, com b 0. (v) A+B, A-B, A*B, A/B: Os operandos A e B podem ser dos tipos inteiro (int), ponto flutuante (float; double) ou caractere (char). int a=10, b=3; Expressão: Resultado da avaliação: a+b 13 a-b 7 a*b 30 a/b 3 a%b 1 char c1,c2; c1 = 'A' /* ASCII 65 */ c2 = 'a'; /* ASCII 97 */ /* cte '2' -> ASCII 50 */

15 Expressão: Resultado da avaliação: c1 + c2 162 c1 + c c1 + c2 + '2' 212 No caso do operador %, quando um dos operandos for negativo, o resultado da operação será o resto da divisão com sinal do primeiro operando. int a=11, b=-3; Expressão: Resultado da avaliação: Verificação: a / b -3 a % b a 2 a b * b a % b int a=-11, b=3; Expressão: Resultado da avaliação: Verificação: a / b -3 a % b a -2 a b * b a % b b.2) Conversão de tipo na Avaliação Em geral o resultado final será expresso com a maior precisão possível, conforme o tipo de dado dos operandos envolvidos na operação. Declarações: Expressão: Tipo do valor resultante: float a; double b; a + b double.

16 Declarações: Expressão: Tipo do valor resultante: float a; char b; int c; a + b a + c float Para a conversão do resultado de uma expressão para um tipo de dados desejado pode ser utilizado um construtor de de cast, cuja forma geral é a seguinte: (<tipo_de_dado>) <expressão> onde <tipo_de_dado> designa o tipo de dado para o qual o resultado da <expressão> deverá ser convertido. Exemplos: Declarações: Expressão: Observação: int i = 8; Operação inválida, pois os dois float f = 9.7; (i + f) % 4; operandos deveriam ser do tipo int, o que não ocorre neste caso: i f % 4 float ((int)(i + f)) % 4 ((int) f) % 3 Operação válida, pois, neste caso os dois operandos são do tipo int: int i f ) % 4 int Operação válida: int f % 3 Observe-se que neste caso o valor de f será truncado (antes do cálculo do resto da divisão). b.3) Precedência de Operadores Para o caso dos operadores aritméticos, a precedência é definida como mostrado na tabela a seguir:

17 Ordem de precedência Operadores (i) * / % (ii) + - Dentro de um mesmo grupo de precedência, a associatividade é da esquerda para direita. Por exemplo, no caso de uma multiplicação seguida de uma divisão, a multiplicação é efetuada primeiro. Exemplos: Ordem de avaliação de algumas expressões: Expressão aritmética (C) Ordem de avaliação Expressão equivalente a * b / c a b/c * d a * b / c R1 R2 a b / c * d R1 R2 R3 ab c b a d c Considere a seguinte expressão aritmética: w = 2 * ((i % 5) * (4 + (j 3)/(k + 2))) Uma solução equivalente e em princípio melhor, em termos de legibilidade, é dada por: u = i % 5; v = 4 + (j 3)/(k + 2); w = 2 * (u * v); b.4) Operadores Unários Estudaremos nesta seção os seguintes operadores unários: Operador Significado - Menos unário ++ Operador de incremento -- Operador de decremento Sizeof Retorna o tamanho de seu operando, em bytes (tipo) Construtor de cast (conversão de tipo)

18 Exemplos e detalhamento destes operadores são apresentados a seguir, com exceção do construtor de cast, já apresentado na seção (b.2). Observe-se que a associatividade dos operadores unários é da direita para a esquerda. b.4.1) Menos unário Exemplos: (x + y) -5e-32 -a b.4.2) Operadores de incremento e decremento Suponha que i seja uma variável inteira. A tabela a seguir apresenta o significado das operações de incremento (++) e decremento (--) aplicadas à variável i. Expressão Equivalente a: ++i i i i i i - 1 Os operadores de incremento e decremento podem anteceder ou seguir um identificador de variável, com significados distintos, como esclarece a tabela a seguir. Expressão ++i i++ Observações O valor corrente de i é incrementado e o novo valor é utilizado no contexto em que a expressão comparece. O valor corrente de i é utilizado no contexto em que a expressão aparece, após o que o valor de i será incrementado. Exemplos: Considere os trechos de programas a seguir, em que comparecem operações de incremento e decremento. Os comentários ao lado das instruções mostram os valores atribuídos às variáveis após a execução das respectivas instruções. int i = 10, j, k; j = ++i; /* i = 11; j = 11 */ k = --i; /* i = 10; k = 10 */ int i = 10, j, k; j = i++; /* j = 10; i = 11 */ k = i--; /* k = 11; i = 10 */ b.4.2) Operador sizeof

19 O programa a seguir apresenta o tamanho requerido em bytes para armazenar valores de cada um dos tipos de dados básicos da Linguagem C, no ambiente do Dev-C++. // Operador sizeof: memória requerida // para dados dos tipos básicos // Programador: Sena Ano: 2010 #include <stdio.h> int main(void) { /* Teste do operador sizeof */ int i; float x; double y; char c; printf ("\n\n\tint: \t%d\n",sizeof i); printf ("\tfloat: \t%d\n", sizeof x); printf ("\tdouble:\t%d\n", sizeof y); printf ("\tchar: \t%d\n\n", sizeof c); system("pause"); } Tela de execução: O programa a seguir corresponde a uma variação do programa anterior, utilizando o construtor de cast: // Operador sizeof: memória requerida para dados // dos tipos básicos: uso de construtor de cast // Programador: Sena Ano: 2010 #include <stdio.h> int main(void) { /* Teste do operador sizeof */ printf ("\n\n\tint: \t%d\n",sizeof (int)); printf ("\tfloat: \t%d\n", sizeof (float)); printf ("\tdouble:\t%d\n", sizeof (double)); printf ("\tchar: \t%d\n\n", sizeof (char)); system("pause"); }

20 c) Operadores Relacionais e Lógicos c.1) Operadores Relacionais: < <= > >= Operadores de Igualdade: == (igual a)!= (diferente: não igual a ) Uma expressão construída utilizando os operadores relacionais, e que também pode incluir os operadores lógicos (estudados a seguir) é uma expressão lógica. Uma expressão lógica é avaliada como verdadeiro (representado pelo valor inteiro 1) ou falso (representado pelo valor inteiro 0). int i=1, j=2, k=3; float f = 5.5; char c = 'w'; /* ASCII 119 */ Expressão: Resultado da avaliação: i < j 1 (j+k) > (i+j) 1 j!= 2 0 i == 1 1 (i+f) <= 5 0 c == c!= 'q' 1 c <= 5*(i+f) 0 Note-se que o resultado da avaliação pode, por exemplo, ser armazenado numa variável inteira, como mostra o exemplo a seguir: // Operadores relacionais // Programador: Sena Ano: 2010 #include <stdio.h> int main(void) { /* Declaração de variáveis */ int i = 1; float f = 5.5; char c = 'w'; /* ASCII 119 */

21 } int r; /* resultado avaliação */ /* av. expressao relacional */ r = c <= 5*(i+f); /* saida e pausa */ printf ("\nresultado de c <= 5*(i+f) = %2d\n",r); system("pause"); Tela de execução: c.2) Operadores ( ou conectores ) Lógicos Operador && Significado e ( and : conjunção lógica) ou ( or : disjunção lógica)! não ( not : negação lógica) Os operandos das expressões construídas com estes operadores devem ser expressões lógicas. A avaliação das expressões envolvendo os operadores lógicos é efetuada em conformidade com a tabela de verdade: nesta são apresentados os resultados da avaliação das expressões em função dos valores dos operandos lógicos envolvidos, como mostrado a seguir. Tabela de verdade Operandos a e b: expressões lógicas a b a && b a b!a!b int i = 7; float f = 5.7; char c = 'w'; /* ASCII 119 */

22 Expressão: Resultado da avaliação: (i >= 5) && (c == 'w') 1 (c!= 'r') && (c == 119) 1 (f > 11) (c < 'a') 0 (f <= 11) (i > 100) 1 Observação: (f <= 11) (i++ > 100) 1 i = 7 (f<=11) (++i > 100) 1 i = 7 (f<=11) && (++i == 8) 1 i = 8 (f<=11) && (i++ == 8) 0 i = 8 f > 5 1!(f > 5) 0!(i > (f + 1)) 0 A tabela a seguir mostra como os operadores estudados até este ponto são manipulados na Linguagem C, em termos de precedência e associatividade. Operador(es) Precedência Associatividade ! sizeof (tipo) ( 1 ) D E * / % ( 2 ) E D + - ( 3 ) E D < <= > >= ( 4 ) E D ==!= ( 5 ) E D && ( 6 ) E D ( 7 ) E D Tendo em conta a precedência de operadores em C, muitas vezes parênteses podem ser excluídos, sem que isto comprometa o resultado da avaliação, como mostra o exemplo a seguir: (c!= 'p') ((i + f) <= 10) c!= 'p' i + f <= 10 Não obstante, recomenda-se o emprego de parênteses mesmo que não sejam necessários, sempre que o seu uso puder contribuir para a clareza da codificação.

23 Ainda com relação à avaliação de expressões numéricas, em geral, na Linguagem C, as operações envolvendo operadores aritméticos são avaliadas inicialmente, sendo seguidas pelas operações envolvendo os operadores relacionais e, por último, são avaliadas as operações envolvendo os operadores lógicos Operadores de Atribuição a) Atribuições Simples O operador de atribuição é o = (não confundir com ==, operador de igualdade). Forma geral de uma atribuição: <identificador> = <expressão> Exemplos: Abaixo são apresentados alguns exemplos de instruções de atribuição. a = 3 eps = x = z area = base * altura Quando os operandos são de tipos diferentes em uma expressão de atribuição, o valor da expressão à direita é convertido para o tipo do identificador à esquerda do operador de atribuição. A tabela a seguir ilustra duas situações, apresentando, em cada uma delas, os tipos da expressão (e) e da variável (v) e a conversão efetuada pelo processador da linguagem. v e; e float v int v e; e double v float O valor de e é truncado. O valor de e é arredondado. Exemplos: int i, j = 5; /* declaração de variáveis */ Instrução de atribuição: Valor atribuído: i = j; /* ( i = 5 ) */ i = j / 2; /* ( i = 2 ) */ i = 2 * j / 2; /* ( i = 5 ) */

24 i = 2 * (j / 2); /* ( i = 4 ) */ i = 'x'; /* ( i = 120 ) */ i = '0'; /* ( i = 48 ) */ i = ('x' '0') / 3; /* ( i = 24 ) */ i = ('y' '0') / 3; /* ( i = 24 ) */ b) Atribuições Múltiplas Forma geral: id1 id 2 expressão onde id i designa o i-ésimo identificador. Note-se que no caso de atribuições múltiplas, a associatividade feita da direita para a esquerda: id id expressão id id expressão Exemplos: int i, j; /* declaração de variáveis */ Instrução de atribuição: Valores atribuídos: i = j = 5; /* j = 5; i = 5 */ i = j = 5.9; /* j = 5; I = 5 */ c) Operadores: +=, -+, *=, /=, %= Apresenta-se, a seguir, a sintaxe e a semântica dos operadores += e -+. Na descrição a seguir, id designa um identificador e expr, uma expressão. id += expr id = id + expr id *= expr id = id * expr Exemplos: /* declaração de variáveis */ int i = 5, j = 7; float f = 5.5, g = -3.25; Instrução de atribuição: Valor atribuído:

25 i += 5 ; /* ( i = 10 ) */ f -= g ; /* ( f = 8.75 ) */ j *= ( i 3 ); /* ( j = 14 ) */ f /= 3; /* ( f = ) */ i %= (j 2 ); /* ( i = 0 ) */ Com relação à precedência dos operadores de atribuição, inclui-se a linha mostrada abaixo na tabela de precedências apresentada anteriormente: Operador(es) Precedência Associatividade = += -= *= /+ %= ( 9 ) D E Operador Condicional (? :) Este operador é utilizado na construção de uma expressão condicional, cuja forma geral é a seguinte: expressão 1? expressão 2 : exp ressão 3 A semântica de uma expressão condicional é a seguinte: se a expressão 1 for avaliada como verdadeira, então execute a expressão 2, caso contrário, execute a expressão 3. flag = (i < 0)? 0 : 100; /* se i < 0 então flog = 0 senão flog = 100 */ min = (f < g) f : g; /* atribui a min o menor valor entre f e g */ int a = 1, b = 2, c = 3... c += (a > 0 && a <= 10)? ++a : a / b; Apresenta-se, a seguir, a avaliação da expressão condicional, evidenciando o valor que será atribuído à variável c.

26 c a 0 && a 10? a : 1 1 a 2 1 c 5 a / b Com relação à precedência do operador condicional, inclui-se a linha mostrada abaixo na tabela de precedências apresentada anteriormente: Operador(es) Precedência Associatividade? : ( 8 ) D E Funções de Biblioteca Características gerais: Não fazem parte da linguagem, apesar de todas as implantações as incluírem. Funções de biblioteca similares normalmente são agrupadas como programasobjeto em bibliotecas separadas. A tabela a seguir apresenta alguns exemplos de funções de biblioteca da Linguagem C. Na tabela a seguir, a coluna Tipo se refere ao tipo do valor retornado. Com relação aos argumentos a serem especificados na chamada destas funções, observar a legenda apresentada a seguir: c: argumento do tipo char. i: argumento do tipo int. d: argunto do tipo double. u: argumento do tipo unsigned. Exemplos de Funções de Biblioteca Função Tipo Descrição abs(i) int i cos(d) cosh(d) double double exp(d) double d e fabs(d) double d fmod(d1,d2) double Retorna a parte não inteira do quociente de d1/d2,com sinal de d1

27 log(d) double ln(d ) pow(d1,d2) double d2 d printf( ) int Impressão rand() int Retorna aleatoriamente, um inteiro positivo sin(d) double sqrt(d) double d srand(u) void 5 Inicializa o gerador de números aleatórios scanf (...) int Entrada de dados tan(d) double tg (d) toascii(c) int Converte o valor do argumento para ASCII tolower(c) int Converte o caractere armazenado em c, se uma letra maiúscula, para uma letra minúscula. Nenhuma conversão é efetuada para os demais caracteres. toupper(c) int Como no caso da função anterior, mas convertendo a letra para uma letra maiúscula. 1 Exercícios [2]: 1) Apresentar a ordem de execução e o resultado da avaliação de: int i=1, j=2; int x, y, a, b; a) y = (2*j+1+i)/++i*j++; b) i = j = (++i + ++j) / j++; c) a = ++j + --j * (b = 7/2); 2) Como será avaliada a expressão x +++y: a) x++ + y b) x + ++y 3) Apresentar os valores que serão atribuídos a cada uma das variáveis, após a avaliação das expressões a seguir: int a=1, b=2, c=3, d=4; 5 void: a função não retorna nenhum valor.

28 a) a += b + c; b) b *= c = d + 2; c) d %= a + a + a; d) d -= c-= b -=a; e) a += b += c += 7; 4) Apresentar o valor que será atribuído a k após a avaliação da expressão a seguir: int k, j = 3; k= j==3; 5) Indicar a ordem de avaliação e apresentar o resultado da avaliação das expressões a seguir: int i=1, j=2, k=3, n=2; float x = 3.3, y = 4.4; a) i < j+3 b) 2 * i 7 <= j 8 c) x == y d)!(n - j) e)!n j f)!x *!x g) i && j && k h) i j-3 && 0 i) i == 2 j==4 k==5 j) i=2 j==4 k == 5 k) x < 5.0 && x!= 1.0 i > j 6) Reescrever, sem usar o operador de negação (!) a)!(i==j) b)!(i+1 < j-2) c)!(i<j && n < m) d)!(i<j j<2 && n<3) Referências Bibliográficas 1. Ascencio, A. F. G.; Campos, E. A. V. Fundamentos da programação de computadores. São Paulo: Prentice Hall, Gottfried, B. S. Programming with C. McGraw-Hill, Mizrahi, V.V. Treinamento em Linguagem C. São Paulo: Pearson Prentice Hall, Sene, E.L.F. Primeiro Curso de Programação em C. Florianópolis: Visual Books, 2009.

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. 1 Estruturas da linguagem C 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões. Identificadores Os identificadores seguem a duas regras: 1. Devem ser começados por letras

Leia mais

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S

PROGRAMAÇÃO I E N T R A DA E S A Í DA D E DA D O S PROGRAMAÇÃO I VA R I Á V E I S, C O N S TA N T E S, O P E R A D O R E S E N T R A DA E S A Í DA D E DA D O S Variáveis 2 Variáveis são locais onde são armazenados os valores na memória. Toda variável é

Leia mais

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO

Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Programação de Computadores I Introdução ao C PROFESSORA CINTIA CAETANO Introdução Criada em 1972, por Dennis Ritchie; Centro de Pesquisas da Bell Laboratories; Para utilização no S.O. UNIX; C é uma linguagem

Leia mais

Programação Estruturada

Programação Estruturada Programação Estruturada Introdução à linguagem C Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Programação estruturada

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3.2. Estrutura de Programas e Representação

Leia mais

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento

Hello World. Linguagem C. Tipos de Dados. Palavras Reservadas. Operadores Aritméticos. Pré e pós incremento e pré e pós decremento Hello World Linguagem C printf("hello world!\n"); 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 double

Leia mais

Linguagens de Programação I

Linguagens de Programação I Linguagens de Programação I Tema # 4 Operadores em C Susana M Iglesias FUNÇÕES ENTRADA-SAÍDA I/O printf(), utilizada para enviar dados ao dispositivo de saída padrão (stdout), scanf(), utilizada para ler

Leia mais

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES Linguagem C - Introdução Linguagens de Máquina Representação numérica Difícil utilização e compreensão Específica para cada máquina Linguagens Simbólicas(Assembly)

Leia mais

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02

Programação 1. Atribuição, operadores aritméticos, entrada de dados. Técnico em Eletrônica Semestre 5 02 Programação 1 Atribuição, operadores aritméticos, entrada de dados Técnico em Eletrônica Semestre 5 02 Armazenando na memória tipo de variável #include #include main() { int ano; Declaração

Leia mais

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

#include <stdio.h> Void main() { printf( Cheguei!\n); } INTRODUÇÃO A LINGUAGEM C #include Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C ANTES DO C ERA A LINGUAGEM B B foi essencialmente uma simplificação da linguagem BCPL. B só tinha um tipo de dado, que

Leia mais

Linguagem C Princípios Básicos (parte 1)

Linguagem C Princípios Básicos (parte 1) Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos

Leia mais

Linguagem C: Variáveis e Operadores. Prof. Leonardo Barreto Campos 1

Linguagem C: Variáveis e Operadores. Prof. Leonardo Barreto Campos 1 Linguagem C: Variáveis e Operadores Prof. Leonardo Barreto Campos Sumário Variáveis: Tipos de variáveis; Nome da variável; Palavras reservadas; A função printf(); A função scanf(); Variáveis locais; Variáveis

Leia mais

Linguagem de Programação I. Aula 06 Linguagem C: Tipos de Dados

Linguagem de Programação I. Aula 06 Linguagem C: Tipos de Dados Linguagem de Programação I Aula 06 Linguagem C: Tipos de Dados Da Aula Anterior Linguagens de Programação A Linguagem C: Como tudo começou Principais características da Linguagem C O primeiro programa

Leia mais

Linguagem C. Introdução à Programação C. Variáveis. Identificadores. Identificadores VARIÁVEIS E TIPOS DE DADOS

Linguagem C. Introdução à Programação C. Variáveis. Identificadores. Identificadores VARIÁVEIS E TIPOS DE DADOS Linguagem C Introdução à Programação C Introdução à Ciência da Computação I Prof. Denis F. Wolf Origem de C está associada ao sistema Unix Histórico: 1970: Ken Thompson desenvolve B, baseada em BCPL, para

Leia mais

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Guia de bolso - Prof. César Melo

Algoritmos e Estruturas de Dados I IEC012. Linguagem C - Guia de bolso - Prof. César Melo Algoritmos e Estruturas de Dados I IEC012 Linguagem C - Guia de bolso - Prof. César Melo Histórico A linguagem C é uma linguagem de programação inventada na década de 1970 por Dennis Ritchie Brian Kennigaham.

Leia mais

Programação científica C++

Programação científica C++ Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 2 Expressões Combinação de dados e operadores que resulta em um valor. expressão x = 2 * y + 4; variável operador constante Memória do computador

Leia mais

Introdução à Linguagem C Variáveis e Expressões

Introdução à Linguagem C Variáveis e Expressões INF1005: Programação 1 Introdução à Linguagem C Variáveis e Expressões 08/03/10 (c) Paula Rodrigues 1 Tópicos Principais Programando em C Funções Variáveis Define Operadores e Expressões Entrada e Saída

Leia mais

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES LINGUAGEM C: VARIÁVEIS E EXPRESSÕES Prof. André Backes LINGUAGENS DE PROGRAMAÇÃO Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador deve

Leia mais

4. Estruturas Fundamentais de Programação em C

4. Estruturas Fundamentais de Programação em C 4. Estruturas Fundamentais de Programação em C 4.1. Imprimindo Mensagens e Valores no Monitor de Vídeo A biblioteca de entrada e saída (stdio.h) possui a função printf que imprime mensagens e valores diretamente

Leia mais

Conceitos básicos. Computação eletrônica: Gurvan Huiban

Conceitos básicos. Computação eletrônica: Gurvan Huiban Computação eletrônica: Conceitos básicos Gurvan Huiban ghuiban@cin.ufpe.br Plano de aula 1 Estrutura de um programa em C 2 Variáveis e constantes 3 Comandos de entrada e saída Estrutura de um programa

Leia mais

A Linguagem C. A forma de um programa em C

A Linguagem C. A forma de um programa em C A Linguagem C Criada em 1972 por D. M. Ritchie e K. Thompson. Tornou-se uma das mais importantes e populares, principalmente pela portabilidade e flexibilidade. Foi projetada para o desenvolvimento de

Leia mais

Revisão Linguagem C Parte 1

Revisão Linguagem C Parte 1 Revisão Linguagem C Parte 1 Comentários: Os comentários aparecem em verde e podem iniciados com /* e encerrados com */ quando utilizase várias linhas ou coloca-se // quando forem colocados em apenas uma

Leia mais

Introdução à programação

Introdução à programação Introdução à programação CET Mecatrónica Cenfim Ermesinde Luís Ferreira 1. Conceitos básicos 1.1. Características Linguagem inicialmente usada para a programação de sistemas que viria a tornar-se numa

Leia mais

Entender o problema Encontrar um algoritmo para resolvê-lo. Implementar o algoritmo numa linguagem de programação

Entender o problema Encontrar um algoritmo para resolvê-lo. Implementar o algoritmo numa linguagem de programação Entender o problema Encontrar um algoritmo para resolvê-lo Implementar o algoritmo numa linguagem de programação Permitem implementar um algoritmo Expressar o algoritmo numa forma que o computador entenda

Leia mais

Linguagem C: Introdução

Linguagem C: Introdução Linguagem C: Introdução Linguagem C É uma Linguagem de programação genérica que é utilizada para a criação de programas diversos como: Processadores de texto Planilhas eletrônicas Sistemas operacionais

Leia mais

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano O C++ foi inicialmente desenvolvido por Bjarne Stroustrup durante a década de 1980 com o objetivo de melhorar a linguagem de programação C, mantendo a compatibilidade com esta linguagem. Exemplos de Aplicações

Leia mais

Computação Eletrônica. Tipos de dados, constantes, variáveis, operadores e expressões. Prof: Luciano Barbosa

Computação Eletrônica. Tipos de dados, constantes, variáveis, operadores e expressões. Prof: Luciano Barbosa Computação Eletrônica Tipos de dados, constantes, variáveis, operadores e expressões Prof: Luciano Barbosa Site da disciplina: www.cin.ufpe.br/~if165/ Recapitulando num cubo = n * n * n cubo Algoritmo

Leia mais

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática

Capítulo 1: Introdução à Linguagem C. Pontifícia Universidade Católica Departamento de Informática Capítulo 1: Introdução à Linguagem C Pontifícia Universidade Católica Departamento de Informática Programa Programa é um algoritmo escrito em uma linguagem de programação. No nosso caso, a linguagem C.

Leia mais

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída BCC 201 - Introdução à Programação Variáveis, Comandos de Atribuição e Comando de Entrada e Saída Guillermo Cámara-Chávez UFOP 1/1 Estrutura Básica de um programa C I < d i r e t i v a s do pré p r o c

Leia mais

Conhecendo a Linguagem de Programação C

Conhecendo a Linguagem de Programação C Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Conhecendo a Linguagem de Programação C DCA0800 - Algoritmos e Lógica de Programação Heitor Medeiros 1 Como

Leia mais

Ambiente de desenvolvimento

Ambiente de desenvolvimento Linguagem C Ambiente de desenvolvimento Um programa em C passa por seis fases até a execução: 1) Edição 2) Pré-processamento 3) Compilação 4) Linking 5) Carregamento 6) Execução Etapa 1: Criação do programa

Leia mais

C Operadores e Expressões

C Operadores e Expressões C Operadores e Expressões Adriano Cruz adriano@nce.ufrj.br Instituto de Matemática Departamento de Ciência da Computação UFRJ 15 de agosto de 2013 Adriano Cruz adriano@nce.ufrj.br (IM-DCC-UFRJ)C Operadores

Leia mais

Introdução à Ciência da Computação scc-120

Introdução à Ciência da Computação scc-120 ICMC USP 1.semestre/2011 Introdução à Ciência da Computação scc-120 Aula : Variáveis em C Profa. Roseli Romero mailto: rafrance@icmc.sc.usp.br Slides cedidos pela profa. Renata Fortes Variáveis variáveis

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Introdução a Linguagem C Construções Básicas Programa em C #include int main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius = 30; farenheit = 9.0/5

Leia mais

Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C

Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C. Linguagem de Programação C Linguagem C Algoritmos e Lógica de Programação Reinaldo Gomes reinaldo@cefet-al.br Introdução Pré-processador Variáveis Operadores Introdução: Histórico Linguagem criada por Dennis Ritchie em 1972 Em 1973

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 3.3. Conceitos Básicos de C: Expressões, Operadores e Bibliotecas

Leia mais

Linguagem C. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná

Linguagem C. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná Linguagem C IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Sabemos construir algoritmos que tenham: Variáveis Comandos sequenciais Entrada e saída

Leia mais

Linguagem de Programação C

Linguagem de Programação C Algoritmos e Lógica de Programação Linguagem C Reinaldo Gomes reinaldo@cefet-al.br Introdução Pé Pré-processador Variáveis Operadores Introdução: Histórico Linguagem criada por Dennis Ritchie em 1972 Em

Leia mais

Utilização da Linguagem C

Utilização da Linguagem C Histórico Criada em 1972 por Dennis Ritchie Usada no desenvolvimento do sistema operacional Unix no Bell Labs C foi derivada da linguagem B, desenvolvida por Ken Thompson Linguagem procedural de alto nível

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação 128 13 129 Linguagens de Programação Uma linguagem de programação é um vocabulário e um conjunto de regras gramaticais usadas para escrever programas de computador. Esses programas

Leia mais

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação

Programação em C. Variáveis e Expressões. Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Universidade Federal do Rio Grande do Norte Departamento de Engenharia de Computação e Automação Programação em C Variáveis e Expressões DCA0800 Algoritmos e Lógica de Programação Heitor Medeiros Florencio

Leia mais

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados Métodos Computacionais Operadores, Expressões Aritméticas e Entrada/Saída de Dados Tópicos da Aula Hoje aprenderemos a escrever um programa em C que pode realizar cálculos Conceito de expressão Tipos de

Leia mais

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO

LÓGICA DE PROGRAMAÇÃO. PROFª. M.Sc. JULIANA H Q BENACCHIO LÓGICA DE PROGRAMAÇÃO PROFª. M.Sc. JULIANA H Q BENACCHIO Primeiro programa em C #include int main() { int num1, num2, result; scanf("%d",&num1); scanf("%d",&num2); result = num1 + num2; printf("%d",

Leia mais

Aula 4 - Operadores. Prof. Laura Silva de Assis. Engenharia de Computação 2 o Período

Aula 4 - Operadores. Prof. Laura Silva de Assis. Engenharia de Computação 2 o Período Programação I Aula 4 - Prof. Laura Silva de Assis Engenharia de Computação 2 o Período CEFET/RJ - Centro Federal de Educação Tecnológica Celso Suckow da Fonseca UnED Petrópolis 2 o semestre - 2015 1 Sumário

Leia mais

Tipos de Dados Simples (Continuação)

Tipos de Dados Simples (Continuação) SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Tipos de Dados Simples (Continuação) Prof. Vanderlei Bonato: vbonato@icmc.usp.br Prof. Claudio Fabiano Motta Toledo: claudio@icmc.usp.br Sumário

Leia mais

Estrutura do programa

Estrutura do programa Linguagem C Estrutura do programa Exemplo: #include #include main() { printf( Ola, mundo! ); system( pause ); }

Leia mais

A linguagem C (visão histórica)

A linguagem C (visão histórica) A linguagem C (visão histórica) A linguagem C é uma linguagem de programação desenvolvida no ínício dos anos 70 por Dennis Ritchie, que trabalhava nos laboratórios Bell e que também inciou em paralelo,

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas. Aula Tópico 2 Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Básicas Aula Tópico 2 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para o compilador

Leia mais

Linguagem C. André Tavares da Silva.

Linguagem C. André Tavares da Silva. Linguagem C André Tavares da Silva dcc2ats@joinville.udesc.br Variáveis Posição nomeada de memória que é usada para guardar um valor que pode ser modificado pelo programa. Todas as variáveis devem ser

Leia mais

Introdução à Ciência da Computação

Introdução à Ciência da Computação Créditos Introdução à Ciência da Computação Introdução à Linguagem C: Parte I Prof. Ricardo J. G. B. Campello Alguns slides a seguir foram adaptados dos originais gentilmente cedidos por: Prof. André C.

Leia mais

ECT1203 Linguagem de Programação

ECT1203 Linguagem de Programação Universidade Federal do Rio Grande do Norte Escola de Ciências e Tecnologia ECT1203 Linguagem de Programação Prof. Aquiles Burlamaqui Profa. Caroline Rocha Prof. Luiz Eduardo Leite Prof. Luciano Ferreira

Leia mais

Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados

Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados Introdução à Linguagem de Programação C: Variáveis, Constantes, Expressões, Atribuição, Tipos de dados, Entrada e Saída de Dados Disciplina de Programação de Computadores I Universidade Federal de Ouro

Leia mais

Métodos Computacionais

Métodos Computacionais Métodos Computacionais Objetivos da Disciplina e Introdução a Linguagem C Construções Básicas Objetivos da Disciplina Objetivo Geral Discutir técnicas de programação e estruturação de dados para o desenvolvimento

Leia mais

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

Introdução à Programação. Operadores, Expressões Aritméticas e Entrada/Saída de Dados Introdução à Programação Operadores, Expressões Aritméticas e Entrada/Saída de Dados Programa em C #include int main main ( ) { Palavras Reservadas } float celsius ; float farenheit ; celsius

Leia mais

RESUMO DE CONCEITOS BÁSICOS DE C

RESUMO DE CONCEITOS BÁSICOS DE C Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação RESUMO DE CONCEITOS BÁSICOS DE C 1 Material preparado pela profa Silvana Maria Affonso de Lara 2º semestre de 2010

Leia mais

Linguagem de Programação. Thiago Leite Francisco Barretto

Linguagem de Programação. Thiago Leite Francisco Barretto Linguagem de Programação Thiago Leite Francisco Barretto SCHILDT, H. C Completo e Total. 3ª Edição. São Paulo: Makron, 1997. Bibliografia Ementa

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Introdução à Linguagem C Eduardo Simões de Albuquerque Instituto de Informática UFG 13/03/2006 1 História Inventada e desenvolvida por Dennis Ritchie em um DEC- PDP 11 Originária de: BCPL desenvolvida

Leia mais

Introdução à Programação

Introdução à Programação Introdução à Programação Variáveis em C Slides da Profa. Roseli Romero Comandos de Entrada e Saída O objetivo de escrevermos programas é em última análise, a obtenção de resultados (Saídas) depois da elaboração

Leia mais

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues

Revisão da Linguagem C Prof. Evandro L. L. Rodrigues SEL0433 Aplicação de Microprocessadores I Revisão da Linguagem C Prof. Evandro L. L. Rodrigues Estrutura de um programa C Diretivas de pré processamento Declaração de variáveis globais Declaração de protótipos

Leia mais

Conceitos básicos de programação

Conceitos básicos de programação Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*

Leia mais

Linguagem de Programação C. Prof. Fabrício Olivetti de França

Linguagem de Programação C. Prof. Fabrício Olivetti de França Linguagem de Programação C Prof. Fabrício Olivetti de França Linguagem C 2 Linguagem C Imperativo e estruturado Pequeno conjunto de palavras-chaves, operadores, etc. Tipagem estática, porém fraca Permite

Leia mais

Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria USP - ICMC - SSC SSC 0501-1o. Semestre 2015 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Página Pessoal:

Leia mais

Estrutura de Programas e Tipos de Dados Simples

Estrutura de Programas e Tipos de Dados Simples SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Estrutura de Programas e Tipos de Dados Simples Prof. Vanderlei Bonato: vbonato@icmc.usp.br Prof. Claudio Fabiano Motta Toledo: claudio@icmc.usp.br

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Tipos de Dados, Expressões, Operadores e Comandos Básicos Prof.: Julliano Rosa Nascimento julliano.rn@gmail.com Roteiro Tipos de Dados: Revisão Expressões Operadores Comandos Básicos

Leia mais

Linguagem Java - Introdução

Linguagem Java - Introdução Linguagem Java - Introdução Identificadores válidos resultado teste01 _numeroclientes $fortuna Identificadores Identificadores inválidos 101dalmatas 34 #x Palavras reservadas abstract assert*** boolean

Leia mais

Introdução a Linguagem C. Prof. Me. Hélio Esperidião

Introdução a Linguagem C. Prof. Me. Hélio Esperidião Introdução a Linguagem C Prof. Me. Hélio Esperidião Características de um programa De forma geral a maioria dos programas são compostos por dados de entrada, processamento e dados de saída. Entrada de

Leia mais

Curso de C. Declaração de Variáveis 18/3/ :48 1

Curso de C. Declaração de Variáveis 18/3/ :48 1 Curso de C Declaração de Variáveis 18/3/2008 15:48 1 Declaração de Variáveis Objetivos: Aprender como: Criar variáveis Atribuir um valor inicial à variável Escolher um nome para a variável 18/3/2008 15:48

Leia mais

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton nilton@comp.uems.br Introdução A linguagem C foi inventada por Dennis Ritchie e

Leia mais

Laboratório de Introdução à Ciência da Computação I

Laboratório de Introdução à Ciência da Computação I Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professores: Vanderlei Bonato (responsável) - vbonato@icmc.usp.br Luiz Henrique Kiehn (aluno PAE) - lhkiehn@icmc.usp.br

Leia mais

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria

USP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria USP - ICMC - SSC SSC 0501-1o. Semestre 2011 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Página Pessoal:

Leia mais

Variáveis primitivas e Controle de fluxo

Variáveis primitivas e Controle de fluxo Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/

Leia mais

Operadores e separadores Identificadores Palavras chave Constantes

Operadores e separadores Identificadores Palavras chave Constantes Sumário Abordagem de um problema Noções de léxico e de sintaxe Alfabeto da linguagem C Operadores e separadores Identificadores Palavras chave Constantes Programação 2007/2008 DEEC-IST 1 Problema Pretende-se

Leia mais

Conceitos Básicos de C

Conceitos Básicos de C Conceitos Básicos de C Bibliografia Problem Solving & Program design in C, Jeri R. Hanly e Elliot B. Kpffman, 3 a edição Data Structures and Algorithm Analysis in C, Mark Allen Weiss, 2 a edição, Addison-Wesley,

Leia mais

Introdução à Linguagem C

Introdução à Linguagem C Engenharia de CONTROLE e AUTOMAÇÃO Introdução à Linguagem C Aula 02 DPEE 1038 Estrutura de Dados para Automação Curso de Engenharia de Controle e Automação Universidade Federal de Santa Maria beltrame@mail.ufsm.br

Leia mais

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1

INF1007: Programação 2. 0 Revisão. 06/08/2015 (c) Dept. de Informática - PUC-Rio 1 INF1007: Programação 2 0 Revisão 06/08/2015 (c) Dept. de Informática - PUC-Rio 1 Tópicos Principais Variáveis e Constantes Operadores e Expressões Entrada e Saída Tomada de Decisão Construção com laços

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Tipos de Dados, Expressões, Operadores e Comandos Básicos Prof.: Julliano Rosa Nascimento julliano.rn@gmail.com Roteiro Tipos de Dados: Revisão Expressões Operadores Comandos Básicos

Leia mais

Linguagem de Programação C

Linguagem de Programação C Linguagem de Programação C Aula 08 Diogo Pinheiro Fernandes Pedrosa Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais 13 de novembro de 2009 Introdução O que é uma linguagem

Leia mais

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia Calculo da área de um triângulo Algoritmo Área Var base,

Leia mais

Cláudio C. Rodrigues Faculdade da Computação - UFU. Faculdade da Computação - UFU 1

Cláudio C. Rodrigues Faculdade da Computação - UFU. Faculdade da Computação - UFU 1 Cláudio C. Rodrigues Faculdade da Computação - UFU LINGUAGEM C - 01: TIPOS, VARIÁVEIS E E/S PADRÃO Faculdade da Computação - UFU 1 A Linguagem C Linguagem de alto nível, genérica. Foi desenvolvida por

Leia mais

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes

Fundamentos de Programação. Linguagem C++ aula II - Variáveis e constantes. Prof.: Bruno Gomes Fundamentos de Programação Linguagem C++ aula II - Variáveis e constantes Prof.: Bruno Gomes 1 Variáveis Representa uma porção da memória que pode ser utilizada pelo programa para armazenar informações

Leia mais

Introdução a Programação de Jogos

Introdução a Programação de Jogos Introdução a Programação de Jogos Aula 03 Introdução a Linguagem C Edirlei Soares de Lima Estrutura de um Programa C Inclusão de bibliotecas auxiliares: #include Definição

Leia mais

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C

Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Prof. Alessandro Zimmer Introdução à Linguagem C Operadores aritméticos Operadores Unários (um só operando) Incremento

Leia mais

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ).

4.1- Aritméticos + soma - subtração * multiplicação / divisão % módulo (resto da divisão de inteiros ). 2626262626262626262626262626262626262626262626262626 4 - OPERADORES Podem ser: aritméticos, relacionais, lógicos, incremento e decremento, atribuição. Operadores aritméticos têm precedência sobre os relacionais

Leia mais

K&R: Capitulo 2 IAED, 2012/2013

K&R: Capitulo 2 IAED, 2012/2013 Elementos da Linguagem C K&R: Capitulo 2 Elementos da Linguagem C Identificadores Tipos Constantes Declarações Operadores aritméticos, lógicos e relacionais Conversões de tipos Operadores de incremento

Leia mais

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS

PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE PROGRAMAÇÃO ESTRUTURADA E ORIENTADA A OBJETOS Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com eberton.marinho@gmail.com

Leia mais

Aula 03: Introdução a C

Aula 03: Introdução a C Aula 03: Introdução a C Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aula Anterior O que é um computador Organização de um

Leia mais

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU Aula 5 Oficina de Programação Introdução ao C Profa. Elaine Faria UFU - 2017 Linguagem de Programação Para que o computador consiga ler um programa e entender o que fazer, este programa deve ser escrito

Leia mais

Laboratório de Introdução à Ciência da Computação I

Laboratório de Introdução à Ciência da Computação I Laboratório de Introdução à Ciência da Computação I Aula 1 - Estrutura Sequencial Professores: Vanderlei Bonato (responsável) - vbonato@icmc.usp.br Roberto de M. F. Filho (aluno PAE) - rmdff@icmc.usp.br>

Leia mais

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C

Sistemas Operacionais e Introdução à Programação. Programação com linguagem C Sistemas Operacionais e Introdução à Programação Programação com linguagem C 1 Entrada e saída: escrevendo na tela Veja uma comparação entre um programa Portugol e seu equivalente em C: Inicio Inteiro

Leia mais

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4

Algoritmos e Estruturas de Dados I (DCC/003) 2013/1. Estruturas Básicas. Aula Tópico 4 Algoritmos e Estruturas de Dados I (DCC/003) 2013/1 Estruturas Básicas Aula Tópico 4 1 Problema 3 Exibir o maior número inteiro que pode ser representado no computador. 2 Qual o maior número inteiro? Para

Leia mais

Prof. Marcelo Machado Cunha Faculdade Pio Décimo

Prof. Marcelo Machado Cunha Faculdade Pio Décimo 1 Introdução A linguagem C foi criada por Dennis Ritchie, em 1972, no centro de Pesquisas da Bell Laboratories. Sua primeira utilização importante foi a reescrita do Sistema Operacional UNIX, que até então

Leia mais

Parte 1. Programação (linguagem C) Introdução Geral

Parte 1. Programação (linguagem C) Introdução Geral Parte 1 Programação (linguagem C) Introdução Geral Por que a Linguagem C? Permite o desenvolvimento de programas menores e mais rápidos Programador possui controle maior sobre o código Programador deve:

Leia mais

Algoritmos RESUMO - LINGUAGEM C

Algoritmos RESUMO - LINGUAGEM C Algoritmos RESUMO - LINGUAGEM C 1 Sintaxe da linguagem C Componentes reconhecidos pela linguagem C (sintaxe da linguagem): tipos propriedades dos dados; declarações partes do programa, podendo dar significado

Leia mais

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída

Variáveis, Comandos de Atribuição e Comando de Entrada e Saída BCC 201 - Introdução à Programação Variáveis, Comandos de Atribuição e Comando de Entrada e Saída Guillermo Cámara-Chávez UFOP 1/63 Estrutura Básica de um programa C I < d i r e t i v a s do pre p r o

Leia mais

Algoritmos: Conceitos Fundamentais. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

Algoritmos: Conceitos Fundamentais. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza Algoritmos: Conceitos Fundamentais Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza DADOS E EXPRESSÕES 3 Uso da Informação Computador manipula informações contidas em sua memória.

Leia mais