Programma in C riguardante vettori di interi e ciclo for

di il
6 risposte

Programma in C riguardante vettori di interi e ciclo for

Potete dirmi in cosa sbaglio? (La parte mancante riguardo lo storico la aggiungerò poi, vorrei qualche consiglio su come far funzionare il programma)
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX 100
int main(){
    /*Dato un vettore di 100 elementi generati casualmente, scrivere un programma
    che permetta all’utente di inserire un numero e di azzerare tutte le celle del vettore
    il cui numero è suo multiplo. Il programma dovrà terminare quando tutti gli elementi
    del vettore saranno pari a zero comunicando il numero di inserimenti effettuati
    dall’utente. Il programma dovrà inoltre mantenere uno storico, ovvero dovrà permettere di visualizzare
    quali celle sono state azzerate per ogni singolo inserimento dell’utente. */
    int vettore[MAX], vettore_multipli[MAX];
    int choice, i;
    srand(time(NULL));
    for(i=0; i<100; i++){
        vettore[i]=rand()%100;
        printf("\n#%d NUMERO = %d", i, vettore[i]);
    }
    printf("\nInserire numero da 1 a 10 di cui cancellare i multipli: ");
    scanf("%d", &choice);
    switch (choice){
        case 1:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*1;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 2:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*2;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 3:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*3;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 4:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*4;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 5:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*5;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 6:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*6;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 7:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*7;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 8:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*8;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 9:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*9;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
        case 10:
            for (i=0; i<100; i++){
                vettore_multipli[i]=vettore[i]*10;
                vettore_multipli[i]=0;
                printf("\n#%d NUMERO = %d", i, vettore[i]);
            }
            break;
    }
    return 0;
}

6 Risposte

Devi accedere o registrarti per scrivere nel forum
6 risposte