ciao, questo sabato ho un esame di informatica al politecnico, sono al primo anno, quindi ho cercato con piacere di risolvere il tuo problema![]()
Il difetto risiede nel fatto che quando si inserisce un valore maggiore di tutti gli altri, si perde quello che PRIMA era il valore massimo e che quindi dovrebbe diventare il secondo maggiore. Prova così, dovrebbe funzionare:
codice:#include <stdio.h> #include <stdlib.h> int main(){ int contatore, corrente; int maggiore1 = 0; int maggiore2 = 0; printf("Inserire il primo valore:\n"); scanf("%d", &corrente); maggiore1 = corrente; // Il primo valore immesso è anche il maggiore for(contatore=1; contatore<6; contatore++){ printf("Inserire un altro valore:\n"); scanf("%d", &corrente); if(corrente > maggiore1){ maggiore2 = maggiore1; maggiore1 = corrente; }else if(corrente < maggiore1 && corrente > maggiore2) maggiore2 = corrente; } printf("Maggiore1: %d", maggiore1); printf("Maggiore2: %d", maggiore2); system("PAUSE"); return 0; }
Fammi sapere, ciao![]()

Rispondi quotando