Teste tipo para 2ª frequência

Propaganda
Universidade Metodista de Angola - UMA
Programação I
Licenciatura em Engenharia Informática
2ªFrequência
Data: 14 de Novembro de 2009 (2º Semestre, Ano lectivo 2009)
Duração: 1h30min
Prof. Gustavo Sebastião
Turno: tarde
Teste Tipo
Nome____________________________________________________________________Nº__________
Obs: A prova contem 6 problemas que devem ser resolvidos usando a linguagem de programação C
standard (ASI-C). Erros cometidos ao desenvolver os programas tais como, falta de ponto e vírgula no
final das instruções, abertura de chavetas, plicas, aspas, sem as fechar, entre outros, irão conduzir a uma
cotação reduzida.
1. [3.0 val] Escreva um programa em linguagem C que lê do teclado a altura de um grupo de 20 pessoas e
apresenta no ecrã o número de pessoas com altura superior a dois metros. Observação: O aluno é livre de
usar vector ou não.
2. [3.0 val] O que é que o programa abaixo imprime no ecrã?
#include <stdio.h>
#include <stdlib.h>
int main(){
char str[33]="Universidade_Metodista_de_Angola";
str[12]='\n';
str[22]='\0';
printf("%s",str);
exit(0);
}
3.
[4.0 val] Desenvolva um programa em linguagem C que calcula o determinante de matrizes diagonais
de números reais de dimensão n x n. O programa inicialmente deve ler do teclado a dimensão da matriz,
em seguida ler os elementos da matriz diagonal e posteriormente calcular o seu determinante.
4.
[3.0 val] A função factorial recebe como argumento um inteiro e retorna o factorial desse número.
Escreva um programa em Linguagem C que calcula e apresenta no ecrã o factorial dos primeiros 12
números inteiros incluindo o zero, usando a função factorial.
int factorial(int x){
int i;
int n = 1;
for( i = 1 ; i <= x ; i++ )
{
n = n * i;
}
return n;
}
5. [3.0 val] Escreva uma função em Linguagem C que recebe como argumento três números inteiros e
devolve o maior deles.
6. [4.0 val] A função primo recebe como argumento um número inteiro, devolve 1 se o inteiro for um
número primo e devolve 0 caso o número não seja primo. Desenvolve um programa em Linguagem C
que lista os números primos compreendidos entre 12 e 30 usando essa função primo.
int primo(int num){
int divisor = 2;
int resto;
if(num == 1)
return 1;
resto = num % divisor;
while(resto != 0){
divisor++;
resto = num % divisor;
}
if(divisor == num)
return 1;
else
return 0;
}
Boa Sorte!
Download