INF 1007 Programação II  
Aula 01 - Revisão  
Edirlei Soares de Lima  
<elima@inf.puc-rio.br>  
Variáveis e Entrada/Saída de Dados  
#include <stdio.h>  
int main(void)  
{
int numero1, numero2, resultado;  
printf(“Digite o primeiro numero: “);  
scanf(“%d”, &numero1);  
printf(“Digite o segundo numero: “);  
scanf(“%d”, &numero2);  
resultado = numero1 + numero2;  
printf(“Resultado da soma é %d”, resultado);  
return 0;  
}
Funções  
include <stdio.h>  
#
float celsius_fahrenheit(float tc)  
{
float f;  
f = 1.8 * tc + 32;  
return f;  
}
int main (void)  
{
float cels, fahr;  
printf(“Digite a temperatura em celsius: “);  
scanf(“%f”, &cels);  
fahr = celsius_fahrenheit(cels);  
printf(“Temperatura em Fahrenheit: %f“, fahr);  
return 0;  
}
Estruturas Condicionais  
#
include <stdio.h>  
int main (void)  
{
float nota;  
printf("Entre com a nota: ");  
scanf("%f", &nota);  
if (nota >= 9.0)  
printf("A");  
else if (nota >= 8.0)  
printf("B");  
else if (nota >= 7.0)  
printf("C");  
else if (nota >= 5.0)  
printf("D");  
else  
printf("F");  
return 0;  
}
Estruturas de Repetição  
int fatorial(int n)  
{
int f = 1;  
while(n > 1)  
{
f = f * n;  
n = n 1;  
}
return f;  
}
Estruturas de Repetição  
int primo(int n)  
{
int i;  
if (n <2)  
return 0;  
for (i = 2; i < n; i++)  
{
if (n % i == 0)  
return 0;  
}
return 1;  
}
#include <stdio.h>  
Arquivos  
int main(void)  
{
int n;  
float nota, soma = 0.0;  
FILE *fp ;  
fp = fopen ("notas.txt", "r");  
n = 0;  
while (fscanf(fp, "%f", &nota) == 1)  
{
soma = soma + nota;  
n++;  
}
fclose(fp);  
if (n > 0)  
{
printf("Media = %.2f \n", soma / n);  
}
return 0;  
}
Vetores  
int meuvetor[5];  
0
1
2
3
4
5
?
?
?
8?  
?1  
meuvetor[0] = 5;  
meuvetor[3] = 8;  
meuvetor[4] = 1;  
Vetores  
#
include <stdio.h>  
int main(void)  
{
int i;  
float v[6] = {2.3, 5.4, 1.0, 7.6, 8.8, 3.9};  
float s = 0.0;  
for (i=0; i<6; i++)  
{
s = s + v[i];  
}
printf("%f", s);  
return 0;  
}
Matrizes  
int minha_matriz[3][3];  
0
1 2  
? ?1  
? ?  
?8 ?  
0
1
2
5
?
?
?
minha_matriz[0][0] = 5;  
minha_matriz[2][1] = 8;  
minha_matriz[0][2] = 1;  
Matrizes  
float media(int n, float mat[][3])  
{
int i, j;  
float soma = 0.0;  
for (i=0; i<n; i++)  
{
for (j=0; j<QTD_COL; j++)  
{
soma = soma + mat[i][j];  
}
}
return soma /(QTD_COL*n);  
}
Strings  
int main (void)  
{
char cidade[] = "Rio de Janeiro";  
printf("%s \n", cidade);  
return 0;  
}
int comprimento(char s[])  
{
int i;  
int n = 0;  
for (i=0; s[i] != '\0'; i++)  
{
n++;  
}
return n;  
}
Exercício  
Faça um programa que implemente o jogo da senha (para 2  
pessoas):  
O jogador 1 digita uma senha (valor inteiro entre 0 e 100) sem o  
conhecimento do jogador 2. Não permita que valores fora da faixa  
esperada (entre 0 e 100) sejam digitados;  
O jogador 2 tem 5 chances para descobrir a senha. Se ele acertar a  
senha, o programa não deve pedir mais nenhuma tentativa;  
A cada tentativa do jogador 2, o programa deve avisar se o valor  
digitado é maior, menor ou igual a senha. Se o valor digitado tiver uma  
diferença igual a 1 para a senha, o programa deve avisar que “TÁ  
QUENTE!”. Neste caso, nenhuma outra mensagem deve ser exibida;  
Ao final do jogo, se for o caso, enviar a mensagem “Você perdeu.  
Tente novamente depois”;  
Ao final de uma partida, permita ao usuário jogar novamente.  
Leitura Complementar  
Waldemar Celes, Renato Cerqueira, José Lucas  
Rangel, Introdução a Estruturas de Dados, Editora  
Campus (2004).  
Capítulo 1 Ciclo de Desenvolvimento  
Capítulo 2Expressões e E/S  
Capítulo 3 Controle de Fluxo  
Capítulo 4 Funções