Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    45

    stampa arrey e calcola la somma dei suoi elementi

    ciao!!
    devo scrivere il programma che stampa l'arrey e calcola la somma dei suoi elementi:
    codice:
    int main(void)
    {
    /*dichiaro e inizializzo l'arrey*/
    	int a[4][4]={ 2, 3, 9, 4,
    				  6, 9, 1, 3,
    				  7, 5, 3, 7,
    				  9, 8, 7, 9};
    	
    	printf("la somma dei elementi e' %d\n",somma(a,4));
    	stampa(a,4);
    return 0;
    }
    
    /*definisco la funzione*/
    int somma(int a[][4],int j)
    {
    	int i;
    	int tot=0;/*indica il valore della somma*/
    
    	for(i=0;i<4;i++)
    		for(j=0;j<4;j++)
    			tot=tot+a[i][j];
    	return tot;
    }
    /*funzione che stampa l'arrey*/
    void stampa(int a[][4], int j)
    {
    	int i;
    	for(i=0;i<=4;i++)
    		for(j=0;j<=4;j++)
    	printf("l'arrey e' %d\n", a[i][j]);	
    }
    nn mi da errore solo che mi stampa gli elementi dell'arrey in colonna e in più stampa valori negativi e positivi molto grandi non presenti nell'arrey!! che significa? il mio programma è andato al di fuori dei parametri dell'arrey????
    eg

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,466
    Non

    <=4

    ma

    <4

    E si scrive array ... con la a non con la e !!
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2012
    Messaggi
    45
    giusto!
    grazie!!
    eg

  4. #4
    Utente bannato
    Registrato dal
    Oct 2010
    Messaggi
    1,219
    Questa è una matrice, cioè un array di array.
    Come dice oregon la condizione di fine ciclo dovrebbe essere <4, altrimenti ti esce dai confini dell' array, potrebbe anche andare in segmentation fault ma se non lo fa stampa i valori immediatamente adiacenti a quelli del quarto elemento dell' array.

  5. #5
    (edit)
    Amaro C++, il gusto pieno dell'undefined behavior.

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.