Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Escreva um programa que solicite as notas de quatro alunos ao usuário e apresente na tela a menor e a maior nota - Desafio de Programação Resolvido em CQuantidade de visualizações: 638 vezes |
Pergunta/Tarefa: Escreva um programa que solicite as notas de quatro alunos ao usuário e apresente na tela a menor e a maior nota. Esse programa deve possuir uma função para verificar a menor e a maior nota dos alunos possuindo um vetor de entrada. A função ao método não deverá retornar nada, apenas exibir o resultado. Seu código deverá validar as notas informadas para que o valor informado pelo usuário não seja maior que 10 ou menor que 0. Caso o valor informado seja inválido, seu programa deverá insistir na leitura, até que o valor correto seja informado. Sua saída deverá ser parecida com: Digite a nota do aluno 1: 8.3 Digite a nota do aluno 2: 9.1 Digite a nota do aluno 3: 3.5 Digite a nota do aluno 4: 9.8 A menor nota é: 3.5 A maior nota é: 9.8 Veja a resolução deste exercício em C: #include <stdio.h> #include <stdlib.h> #include <locale.h> // função que recebe o vetor e informa a menor e a maior nota void menor_maior_nota(float vetor[], int tamanho){ // vamos assumir que a nota menor e a nota maior sejam iguais // ao primeiro elemento do vetor float menor = vetor[0]; float maior = vetor[0]; int i; // agora varremos o vetor para comparações for(i = 0; i < tamanho; i++){ // essa nota é menor que a menor? if(vetor[i] < menor){ menor = vetor[i]; } // essa nota é maior que a maior? if(vetor[i] > maior){ maior = vetor[i]; } } // mostra os resultados printf("A menor nota é: %f", menor); printf("\nA maior nota é: %f", maior); } int main(int argc, char *argv[]){ setlocale(LC_ALL,""); // para acentos do português // vamos declarar e construir um vetor de 4 floats para guardar as notas float notas[4]; float nota; int i; // agora vamos pedir para o usuário informar as notas dos alunos for(i = 0; i < 4; i++){ printf("Digite a nota do aluno %d: ", (i + 1)); scanf("%f", ¬a); // a nota é válida? while(nota > 10 || nota < 0){ printf("Erro! Digite a nota do aluno %d: ", (i + 1)); scanf("%f", ¬a); } notas[i] = nota; } // vamos exibir a menor e maior nota menor_maior_nota(notas, 4); printf("\n\n"); system("PAUSE"); return 0; } |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |