PROVA TREINAMENTO COM RESPOSTAS
Faça um programa utilizando a linguagem C, que receba (na função main – principal) como entrada por meio do teclado 05 números inteiros que devem ficar armazenados em um vetor chamado vet , de 05 posições.
Vetor
2
5
12
-8
6
0 1 2 3 4
Depois da leitura, chamar uma FUNÇÂO calculaSoma que deverá receber 02 parâmetros (argumentos):
1) O primeiro parâmetro (é um ponteiro para a primeira posição do vetor vet , NÃO permitindo alteração do endereço e nem no conteúdo (UTILIZAR O QUALIFICADOR CONST)
2) O segundo parâmetro é o tamanho do vetor vet , sem permitir altera o conteúdo ( UTILIZAR O QUALIFICADOR CONST)
A função calculaSoma devera somar todos os números positivos armazenados no vetor e retornar (USAR O RETURN) o resultado da soma realizada.
Alem disso , a função calculaSoma devera retornar em um ponteiro a quantidade de números negativos encontrados no vetor.
Ao retornar para função main ( principal ) mostrar o valor da soma realizada e a quantidade de números negativos detectados.
Resposta – Exercício 01- Código sugestão.
#include <stdio.h>
#include <stdlib.h>
// Talvez haja uma forma mais elegante de resolver o exercicio.
// Declarar um ponteiro global para receber a quantidade de nrs negativos. int *nr_de_negativos;
int main(int argc, char *argv[]) { const int vet[5] = {0,0,0,0,0}; void *ponteiro_do_vetor; const int TAMANHO = 4; int controle = 0; int result_soma =0; int tot_neg = 0; //Agora eu pego o endereço do 'vet[5]' e coloco na variável 'ponteiro_do_vetor' ponteiro_do_vetor = &vet;
//Populando o vetor 'vet' for (controle = 0; controle <= TAMANHO; ++controle ){ printf("Digite o valor da variavel nr%i: ", controle+1); scanf("%i", &vet[controle]); } //Chamando a função 'calculaSoma' result_soma = calculaSoma(ponteiro_do_vetor, TAMANHO); //Recuperando a contagem de números negativos tot_neg = *nr_de_negativos; //Imprimindo a saída printf("A soma dos positivos eh: