Parametri di programmazione C.
Nov 01 2020
#include <stdio.h>
void getScores(int a, char n[10][15], int s[10]) {
int score;
printf("Enter the number of students: ");
scanf("%d",&a);
for (int i=0; i < a;i++)
{
scanf("%s",n[i]);
scanf("%d",&score);
s[i]=score;
}
}
void printScores(int a, char n[10][15], int s[10] ) {
for (int i=0; i < a;i++)
{
printf("%s", n[a]);
printf(" ");
printf("%d\n",s[a]);
}
}
int main() {
char names[10][15];
int scores[10];
int num;
getScores(num,names,scores);
printScores(num,names,scores);
}
Quello che sto cercando di realizzare è avere il valore del parametro di int adalla getScoresfunzione da utilizzare in printScoresfunzione di una lunghezza array come viene utilizzato in getScores.
Gli array stanno salvando il proprio valore quando vengono utilizzati nella funzione di stampa, ma il avalore viene reimpostato su un numero non assegnato 896 quando ho bisogno che sia ciò che l'utente immette nella funzione get. Qualche consiglio?
Risposte
P__JsupportswomeninPoland Nov 01 2020 at 14:51
- Stampare i punteggi non stamperà nulla.
void getScores(int *a,
E la chiamata
getScores(&num
È inoltre necessario modificare di conseguenza il codice delle funzioni