Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Errore vettori dev c++

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    4

    Errore vettori dev c++

    Ciao a tutti, mi è stata data una traccia da risolvere in c:
    Dato un insieme di alunni con relativo voto (>6) si richiede l'ordinamento in base al voto.

    Ho difficoltà con i vettori e con la funzione void... la prof non è molto chiara e non ha molta pazienza
    Questo è il codice in c
    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    int app,n;
    int voto[i],voto[j];
    float app1;
    float nome[i],nome[j];
    void ord()
    {
    for (i=0;i<n-1;i++)
    {

    for (j=i+1;j<n;j++)
    {
    if(voto[i]>voto[j])
    {
    void sca_voti()
    {
    app=voto[i];
    voto[i]=voto[j];
    voto[j]=app;
    }
    void sca_nomi()
    {
    app1=nome[i];
    nome[i]=nome[j];
    nome[j]=app1;
    }
    }

    }}}
    void acq()
    {
    do{

    printf("Inserisci il numero degli alunni che vuoi gestire \n");
    scanf("%d",n);
    }while (n<=0 && n>30);
    for(i=0;i<n;i++)
    {
    printf("Inserisci nome \n");
    scanf("%f"&nome[i]);
    do{
    printf("Inserisci voto \n");
    scanf("%d"&voto[i]);
    }while(voto[i]<6 && voto[i]>10);
    }
    }
    int main()
    {void acq();
    void ord();
    void sca_nomi();
    void sca_voti();
    }getch();



    Questi sono gli errori che mi da...come posso risolvere?

    [Error] 'i' undeclared here (not in a function)
    [Error] 'j' undeclared here (not in a function)
    [Warning] data definition has no type or storage class [enabled by default]

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    I primi due errori indicano che le variabili i e j non esistono.

    E poi, quando indichi

    int voto[i],voto[j];
    float nome[i],nome[j];

    si deve sapere *prima* quanto valgono i e j
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    4
    Eh il problema delle variabili inesistenti l'avevo capito, il fatto è che non ho idea di come risolvere...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Ma l'hai scritto tu il codice?

    In ogni caso, dato che non gestisci più di 30 alunni, invece di i e j (che non c'entrano nulla) utilizza il valore 30 per i voti

    int voto[30];

    e anche per i nomi ma tieni presente che non ha senso che i nomi siano double.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    4
    Si il codice l'ho scritto io.
    Cosa intendi per "non ha senso che i nomi siano double" ? Io devo sostituire oltre ai voti anche la posizione dei nomi..
    E per quanto riguarda voto[30] dovrei sostituire questo a tutti gli altri vettori che hanno [i] e [j] ?
    Ti dispiace sistemarlo tu? Capirei meglio
    Ultima modifica di Bawon; 26-09-2016 a 18:18

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Il tipo di dato del nome, come

    Antonio

    non può essere inserito in un vettore di tipo float o double come hai scritto tu. Sai che un float è un numero e un nome è una stringa?

    Non lo sistemo io, ma ti dò i suggerimenti ... fallo tu, impegnati ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    4
    Non ho ancora studiato le stringhe, per nome intendo solo la prima lettera del nome.
    Comunque mi sono reso conto che ho fatto una cavolata, ho confuso il float con il char

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.