Ciao,
devo fare un programma che, inserita una matrice RxC, dica all'utente quale riga contiene più elementi positivi.
Il problema è che se inserisco il numero di righe maggiore di 1 mi dice sempre che il maggior numero di elementi si trova nella riga 2.
Ciao e graziecodice:#include<stdio.h> int main() { int righe, colonne, tot1=0, tot2=0, x, y; float mat[100][100]; printf("Inserisci il numero di righe della matrice:"); scanf("%d", &righe); printf("Inserisci il numero di colonne della matrice:"); scanf("%d", &colonne); for(y=0;y<righe;y++) { for(x=0;x<colonne;x++) { printf("Inserisci il valore della matrice in posizione [%d] [%d]: ", x+1, y+1); scanf("%f", &mat[x][y]); } } printf("\nLa riga con piu\' elementi positivi e\': %d\n", pos(mat, righe, colonne, tot1, tot2)); system("pause"); return 0; } //Implementazione della fuzione int pos(float matrice[][200], int r, int c, int totale1, int totale2) { int pos=0, k=0, x, y;//Serve per indicare la riga con più elementi positivi //k fa da contatore for(y=0;y<r;y++) { for(x=0;x<c;x++) { if(matrice[x][y]>0) totale2++; }//Chiusura for delle x if(k==0) { totale1=totale2; pos=y+1; } else { if(totale1<=totale2) { totale1=totale2; pos=y+1; } }//Chiusura else k++; }//Chiusura for delle y return pos; }

Rispondi quotando