Я пытаюсь написать программу, которая могла бы принять ввод (имя, фамилию, счет) от пользователя и распечатать его после того, как все входные данные были такими.
fname1 lname1 : 99
fname2 lname2 : 23
fname3 lname3 : 29
//Note that all of them are input
Я написал следующая программа, она работает, но печатает последний ввод n раз. Я знаю, в чем проблема, но не знаю, как ее решить. Переменная temp для массивов создается в одном и том же месте каждый раз , и она делает все элементы одинаковыми. Как это исправить?
#include <stdio.h>
#define LENGTH 3
int main() {
int *score[LENGTH];
char *fname[LENGTH];
char *lname[LENGTH];
for(int i = 0; i < LENGTH; i++){
printf("Enter name and score of batter %d: ",i);
char ftemp[10];
char ltemp[10];
int tempScore;
scanf("%s %s %d", ftemp, ltemp, &tempScore);
fname[i] = ftemp;
lname[i] = ltemp;
score[i] = &tempScore;
}
for(int i = 0; i < LENGTH; i++){
printf("%s %s %d\n", fname[i], lname[i], *score[i]);
}
}