Meu amado professor nós passou um exercício solicitando um sistema para cadastrar alunos, nem comecei a já esta dando erro na hora de digitar o sexo.  
  
Alguém pode me ajudar?  
  
Já coloquei o "e comercial (&)" tirei e nada. Tentei mudar para %s, e nada. Tentei até mesmo trocar o computador pensando que pudesse ser o copilador, mas o erro continua. O que pode ser?  
#include <stdio.h>
#include <stdlib.h>
/* 	struct 
	Montar um programa que receba 5 cadastros de alunos contendo os campos idade, sexo e nome. 
	Depois de cadastrados o programa deve retornar a média das idades e o nome do aluno que 
	tenha a idade mais proxima a media, ignorar numeros menores que a media 
	Plus: Se o nome do aluno começar com a letra A ele não entra na media 
	
	*/
int main ()  {
	
	int ii=0,i=0,alunoi=1;
	struct Aluno {
		char nome[20]; 
		char sexo;
		int idade;
	};
	struct Aluno aluno[i]; 
while (ii < 5) {
	printf ("\n\nDigite os dados do aluno %d \n",alunoi);
	
	printf ("\nDigite o nome do aluno: ");
	scanf ("%s",aluno[i].nome);
	printf ("\nDigite o sexo do aluno: ");
	scanf (" %c",&aluno[i].sexo);
		
	printf ("\nDigite a idade do aluno: ");
	scanf ("%d",&aluno[i].idade);
	printf ("\n\nAluno: %s - Idade: %d - Sexo: %c\n",aluno[i].nome,aluno[i].idade,aluno[i].sexo);
	
	i++;
	ii++;
	alunoi++;
}
	
	return 0;
}
/*	struct aluno aluno[0]; 
		strcpy (aluno[0].nome,"Evaldo");
		aluno[0].idade=20;
		aluno[0].sexo='M';
		printf ("Nome do aluno: %s - Idade: %d - Sexo: %c\n",aluno[0].nome,aluno[0].idade,aluno[0].sexo);
		
		aluno[i].nome;
		aluno[i].idade;
		aluno[i].sexo;		
*/