Você está na página 1de 36

UNIDADE II

Linguagem e Técnicas
de Programação

Prof. Fernando Almeida


Introdução

C é uma linguagem de programação compilada de propósito geral,


estruturada, imperativa, procedural, padronizada pela ISO, criada em
1972 por Dennis Ritchie, no AT&T para desenvolver o sistema operacional
Unix.

Fonte: autoria própria.


Características da linguagem C

 Linguagem estruturada
 Médio nível
 Modularidade
 Compilada
 Recursos de baixo nível
 Eficiente
 Confiável
 Simples e de fácil uso
 Caso sensitivo (sensitive case)
Regras da linguagem C

 Sintaxe muito rígida (regras detalhadas)


 Tipos: propriedade dos dados
 Declarações: identificador
 Expressões: fórmulas que atribuem e alteram valores
 Funções: subrotinas, subprogramas em C
 main()
 printf()
 scanf()
Palavras reservadas pelo padrão ANSI

Fonte: livro-texto.
Estrutura de um programa em C

#include <stdio.h>
/*
COMENTÁRIOS
Meu primeiro programa em C
*/
void main()
{
//comentário de uma única linha
printf(“meu primeiro programa em C\n”);
}
Interatividade

A linguagem de programação C é uma linguagem estruturada, de “médio nível”, utilizada


principalmente para o desenvolvimento de sistemas operacionais, planilhas eletrônicas e
sistemas gerenciadores de bancos de dados. Com base nestas informações, selecione a
alternativa com as afirmações consideradas corretas:
a) Escalabilidade do compilador, bibliotecas padronizadas, variedade de operadores,
facilidade na sintaxe, acesso a hardware e otimização de aplicações.
b) Flexibilidade na sintaxe – tipos, declarações, expressões e funções.
c) Não permite atribuir valores no momento da declaração da variável ou várias variáveis do
mesmo tipo e na mesma linha.
d) O operador de incremento e decremento automático são
operadores considerados convencionais que atuam sobre a
própria variável, incrementando ou decrementando o valor.
e) Não possui comandos de entrada e saída de dados. Esta
ação é realizada através de funções contidas na biblioteca
padrão stdio.h.
Resposta

A linguagem de programação C é uma linguagem estruturada, de “médio nível”, utilizada


principalmente para o desenvolvimento de sistemas operacionais, planilhas eletrônicas e
sistemas gerenciadores de bancos de dados. Com base nestas informações, selecione a
alternativa com as afirmações consideradas corretas:

e) Não possui comandos de entrada e saída de dados. Esta ação é realizada através de
funções contidas na biblioteca padrão stdio.h.
Tipos de informações, variáveis e constantes

 Tipos primitivos de dados

Fonte: livro-texto.

 <tipo de dado> <lista de variáveis>


 int idade;
 const <tipo de dado> <nome variável = valor;
 const float pi = 3.14159;
Exemplo
Declaração de variáveis

 A linguagem permite declarar muitas variáveis do mesmo tipo:


 int a;
 float a;
 int a = 5;
 int a, b, c;
 int a, b=6, c;
Tipos primitivos de dados

Intervalo
Tipo N° de bits
Valor inicial Valor final
Char 8 -128 127
Unsigned char 8 0 255
Signed char 8 -128 127
Int 16 -32,768 32,767
Unsigned int 16 0 65,535
Signed int 16 -32,768 32,767
Short int 16 -32,768 32,767
Unsigned short int 16 O 65,535
Signed short int 16 -32,768 32,767
Long int 32 -2.147.483.648 2.147.483.647
Signed long int 32 -2.147.483.648 2.147.483.647
Unsigned long int 32 O 4.294.967.295
Float 32 3,4E-38 3,4E+38
Double 64 1.7 E-308 1.7 E308
Long Double 80 3.4E-4932 3.4E+4932

Fonte: livro-texto.
Cadeias de caracteres – inicialização direta

Quando o tamanho for indefinido, será necessário colocar a


indicação de fim de caractere.

Fonte: livro-texto.
Código de barra invertida

Código Significado
\b Retrocesso (back)
\f Alimentação de formulário (form feed)
\n Nova linha (new line)
\r Retorno de carro (carriage return)
\t Tabulação horizontal (tab)
\" Aspas
\’ Apóstrofo
\0 Nulo (O em decimal)
\\ Barra invertida
\v Tabulação vertical
\a Sinal sonoro (beep)
\N Constante octal (N é o valor da constante)
\xN Constante hexadecimal (N é o valor da constante)

Fonte: livro-texto.
Operadores

Fonte: livro-texto.
Interatividade

Analise o pseudocódigo abaixo e assinale a alternativa que contenha o valor final das variáveis A e F,
respectivamente.

a) A = 6 e F = 14.44 …
b) A = 7 e F = 14.44 A = 7;
c) A = 3 e F = 14.11 A--;
d) A = 6 e F = 9.0 B = A + 5;
e) A = 7 e F = 14.22 C = (B – 5) * 3;
C++;
D = (C / 5) + A;
E = D % A;
F = pow(E, 2);

Resposta

Analise o pseudocódigo abaixo e assinale a alternativa que contenha o valor final das variáveis A e F,
respectivamente.

a) A = 6 e F = 14.44

b) A = 7 e F = 14.44 A = 7;
c) A = 3 e F = 14.11 A--;
d) A = 6 e F = 9.0 B = A + 5; A = 6;
e) A = 7 e F = 14.22 C = (B – 5) * 3; B = 11;
C++; C = 19;
D = (C / 5) + A; D = 9.8; (cast float)
E = D % A; E = 3.8;
F = pow(E, 2); F = 14.44;

Sintaxes específicas

 Atribuição múltipla
 y = x = 5;
 Operadores de incremento e decremento
 int a = 5;
 a++;
 x = ++a;

Fonte: livro-texto.
Operadores unários em C

Fonte: livro-texto.
Operadores relacionais em C

Fonte: livro-texto.
Operadores lógicos em C

Fonte: livro-texto.
Conversão de tipos em C (cast)

Permite a conversão de um tipo de dado em outro.

int a;
a = (int) 3.5;

int a;
a = 3.5 % 2; //erro
Interatividade

Analise o pseudocódigo abaixo e considere X e Y como variáveis inteiras, Z e W cadeias de caracteres


e T e K variáveis lógicas (booleanas), ao final da execução, quais os valores que estarão associados
às variáveis X, T e K, respectivamente?

a) X = 3, T = 0 (false) e K = 1 (true); …
b) X = 3, T = 0 (false) e K = 0 (false); X = 3;
c) X = 3, T = 1 (true) e K = 0 (false); Y = pow(x,2) + ((14+4)/2) * 9-10;
Y++;
d) X = 2, T = 0 (false) e K = 1 (true);
Z = “Lógica”;
e) X = 2, T = 1 (true) e K = 1 (true);
W = Z + “ Programação”;
X--;
T = (X<=Y) && (!(Y!=X)) == (Y>=X);
K = !T || (X>Y);

Resposta

Analise o pseudocódigo abaixo e considere X e Y como variáveis inteiras, Z e W cadeias de caracteres


e T e K variáveis lógicas (booleanas), ao final da execução, quais os valores que estarão associados
às variáveis X, T e K, respectivamente?

a) X = 3, T = 0 (false) e K = 1 (true); …
b) X = 3, T = 0 (false) e K = 0 (false); X = 3;
c) X = 3, T = 1 (true) e K = 0 (false); Y = pow(x,2) + ((14+4)/2) * 9-10;
Y++;
d) X = 2, T = 0 (false) e K = 1 (true);
Z = “Lógica”;
e) X = 2, T = 1 (true) e K = 1 (true);
W = Z + “ Programação”;
X--;
T = (X<=Y) && (!(Y!=X)) == (Y>=X);
K = !T || (X>Y);

Entrada e saída de informações

 A linguagem C não possui comandos de entrada e saída.


 São feitos por meio de funções através da biblioteca-padrão stdio.h (Standard Input
Output).
 A inclusão é feita no início do programa por meio da instrução:
 #include <stdio.h>
Comando de saída

 Função que executa a visualização de informações na tela


 printf()

printf(“ formato ” ,lista de variáveis/expressões)

Fonte: livro-texto.
Comando de saída

Fonte: livro-texto.
Comando de saída – outro exemplo

Fonte: livro-texto.
Para entender

Fonte: livro-texto.
Exemplo de aplicação
Comando de saída

 Função que permite a entrada de dados pelo teclado


 scanf()

scanf(“ formato “,&variavel)

Fonte: livro-texto.
Comando de entrada

Fonte: livro-texto.
Exemplo de aplicação
Interatividade

Considere o trecho de código abaixo, tendo como variáveis nome (cadeia de char), faltas
(inteiro) e média (float). Qual das alternativas abaixo imprime a seguinte frase:
Olá (nome), você tem (número de faltas) faltas e sua média é (média)!
a) printf(“Olá %s, você tem %d faltas e sua média é %.2f \n”, nome, faltas, media);
b) printf(“Olá %s, você tem %d faltas e sua média é %.2f \n”, &nome, &faltas, &media);
c) printf(“Olá &nome, você tem &faltas faltas e sua média é &media”, nome, faltas, media);
d) printf(“Olá %c, você tem %? faltas e sua média é &media”, nome, faltas, media);
e) printf(“Olá %?, você tem %? faltas e sua média é %?”, nome, faltas, media);


scanf(“%s” “%d” “%.2f”, &nome, &faltas, &media );

printf(…);

Resposta

Considere o trecho de código abaixo, tendo como variáveis nome (cadeia de char), faltas
(inteiro) e média (float). Qual das alternativas abaixo imprime a seguinte frase:
Olá (nome), você tem (número de faltas) faltas e sua média é (média)!
a) printf(“Olá %s, você tem %d faltas e sua média é %.2f \n”, nome, faltas, media);
b) printf(“Olá %s, você tem %d faltas e sua média é %.2f \n”, &nome, &faltas, &media);
c) printf(“Olá &nome, você tem &faltas faltas e sua média é &media”, nome, faltas, media);
d) printf(“Olá %c, você tem %? faltas e sua média é &media”, nome, faltas, media);
e) printf(“Olá %?, você tem %? faltas e sua média é %?”, nome, faltas, media);


scanf(“%s” “%d” “%.2f”, &nome, &faltas, &media );
printf(…);

ATÉ A PRÓXIMA!

Você também pode gostar