Estou fazendo um programa para armazenar nome, ra e media dos alunos e ver se ele foi aprovado, tudo está indo certo, mas ao escrever o nome, ele armazena e usa para o mesmo nome para os 3 alunos, não pedindo para declarar de novo, o que eu faço para conseguir declarar 3 nomes diferentes mesmo que esses sejam com mais de uma palavra?
#include <stdio.h>
#include <stdlib.h>
struct alunos {
int ra;
char nome[30];
float media;
};
struct alunos aluno;
int main()
{
for(int i = 1; i<=3;i++)
{
printf("Digite o nome do aluno %d: ",i);
scanf("%[^\n]s",aluno.nome);
printf("Digite o RA do aluno %d: ",i);
scanf("%d",&aluno.ra);
printf("Digite a media do aluno %d: ",i);
scanf("%f",&aluno.media);
if(aluno.media>=6)
{
printf("\nAluno %d: %s , com RA: %d , foi aprovado com a media %.2f \n",i, aluno.nome,aluno.ra,aluno.media);
}
else
{
printf("\nAluno %d: %s , com RA: %d , foi reprovado com a media %.2f \n",i, aluno.nome,aluno.ra,aluno.media);
}
}
}