Indentação

Bom, uma duvida besta. Mas gostaria de saber se a indentação do meu codigo esta correta. Pergunto pois meu prof falou que descontaria ponto caso não estivesse

import java.util.Scanner;
import java.util.ArrayList;
public class Aluno
{
    Scanner input = new Scanner(System.in);
    public int matricula;
    private String nome;
    private String data;
    private String end;
    private String email;
    int i;
    public Aluno(int matricula, String nome, String data, String end, String email)  // CONSTRUTOR
		{
	        this.matricula=matricula;
	        this.nome=nome;
	        this.data=data;
	        this.end=end;
	        this.email=email;
        }
     public void Cadastro()
						{

                          System.out.print("Digite sua matricula \n\n");
                          matricula = Integer.parseInt(input.nextLine());
                          System.out.print("\n");
                          System.out.println("Digite o seu nome \n\n"); // NOME
                          nome = input.nextLine();
                          System.out.print("\n");
                          System.out.print("Digite a data de nascimento \n\n"); // DATA
                          data = input.nextLine();
                          System.out.print("\n");
                          System.out.println("Digite o seu endereço \n\n"); // ENDEREÇO
                          end = input.nextLine();
                          System.out.print("\n");
                          Aluno a1 = new Aluno(matricula, nome, data, end, email) ;
                          System.out.println("Digite o seu email \n\n"); // EMAIL
                          email = input.nextLine();
                          System.out.print("\n");
                          			for(i = 0; i < 100; i++)  // "LIMPAR A TELA"
						  			{
						  			       System.out.println("");
						  }
											i++;
                        }
     public void Imprime()// IMPRIMIR
      {

		                 System.out.printf("Matricula: %d\n", matricula);
						 System.out.printf("Nome do Aluno: %s\n", nome);
						 System.out.printf("Data de nascimento: %s\n", data);
						 System.out.printf("Endereco: %s\n", end);
						 System.out.printf("E-mail: %s\n", email);
						 System.out.print("\n\n");
	  }
}

E esse

import java.util.Scanner;
import java.util.ArrayList;
public class Cadastro
{
	public static void main (String []arg)
	{
		Scanner input = new Scanner(System.in);
		Aluno Aluno[];
		Aluno[] aluno = new Aluno[50];
		int op;
		int i=0;
		int b;
		int matricula2;
		int matricula = 0;  // Estava dando erro de variavel não iniciada
		String nome = null;
		String data = null;
		String end = null;
		String email = null;
	    do{
				System.out.print("\n\n###CADASTRO DOS ALUNOS###\n\n");
				System.out.print("\n1 - Cadastrar aluno \n2 - Listar todos os alunos cadastrados \n3 - Buscar aluno pela matricula \n4 - Sair do programa \nDigite sua opcao: ");
				op = Integer.parseInt(input.nextLine());
				System.out.print("\n");
			    switch(op)
			    {
							case 1:
								for(b = 0; b < 100; b++)  // "LIMPAR A TELA"
								{
									 System.out.println("");
								 }
										if (i>50)
									    {
											System.out.print ("Capacidade esgotada \n");
										}
										else {

												 aluno[i] = new Aluno(matricula,nome,data,end,email); // cria novo aluno com base no construtor
												 aluno[i].Cadastro(); // chama procedimento de cadastro
										         i++;
									         }
									        break;
							case 2:
											for (i=0; i<50; i++)
											{
												if (aluno[i] != null)
												{
											      aluno[i].Imprime(); // chama procedimento de impressao
										        }
									        }
									        break;
						   case 3:
										System.out.println ("Digite a matricula \n");
										matricula2 = Integer.parseInt(input.nextLine());
										for (i=0; i<50; i++)
						   			    {
											if (aluno[i] !=null)
											{
										       if (matricula2 == aluno[i].matricula) // compara matricula digitada com matricula de aluno na posição i
										       {
											   aluno[i].Imprime();
										       }
										   }
								        }
										break;
              }
	   }while (op!=4);
	}
}

Uma forma fácil de resolver o seu problema é pegar seu código e reformatá-lo no Eclipse. A configuração padrão do Eclipse segue os padrões normalmente aceitos.

[quote=gustavo.rotondo]Bom, uma duvida besta. Mas gostaria de saber se a indentação do meu codigo esta correta. Pergunto pois meu prof falou que descontaria ponto caso não estivesse
[/quote]

Não. não está.

Vc só indenta quando abre chaves { e desindenta quando fecha chaves.
Existe outras regras mais avançadas, mas no seu codigo vc não precisa ( por exemplo quando se usa builder ou a linha é muito grande)

Se vc coloca um for depois do outro, os dois ficam alinhados, e os corpos de cada um é que ficam identados.
O mesmo para switch, if, etc…

Existe uma questão se a chave fica na mesma linha da assinatura do método, ou na linha de baixo. Isso é uma questão de estilo, e não de identação. Vc colocou na de baixo. Ok, mas no mercado normalmente é junto à asinatura porque é a convensão da Sun. em C# é como vc escreveu porque é a convensão da Microsoft. Por isso o prof não pode tirar pontos, mas o resto das identações estão bem ruins.

Indente com espaços e não com tab. IDE como o eclipse permite q vc configura para que o IDE coloque espaços quando vc aperta a tecla tab. use 4 espaços.

Evite dar nomes de variáveis que se confundam com nomes de classes. (No seu caso, eu acabei vendo que a variável, ainda por cima, não é usada - isso pode levar a problemas de programas que não funcionam como devem porque você se confundiu com os nomes das variáveis).

        Aluno Aluno[];

Embora isso seja possível em Java (não é possível em C++, por exemplo), eu considero que é algo muito, muito confuso. Em particular, para coleções e arrays eu prefiro usar o plural, já que um array de alunos contém vários alunos:

        Aluno[] alunos;

Caso você abra o código no Netbeans (versão mais atual pelo menos), tem um atalho que ele identa pra você, aí se tiver um local estranho vai te indicar onde está o erro.
O atalho é “alt + shift + f”

Por padrão, é errado eu indentar utilizando as chaves dessa forma?

public class Teste
{
	public static void main(String args[])
	{
		String t = "*";
		System.out.println("*");
		
		for (int i=0;i<9;i++)
		{
			//System.out.println(t += "*");
		}

	}
}

Em Java, pelas Java Code Conventions, é sim:
http://www.oracle.com/technetwork/java/index-135089.html

Entretanto, esse é um padrão comum em várias linguagens (como C++ e C#). O ideal é fechar um único padrão e utiliza-lo em sua equipe. Normalmente, programadores Java dão preferência para a convenção oficial, criada pela Sun e que, ironicamente, muitas vezes não é usada nas classes do próprio Java.

Particularmente, acho assim melhor, mas tem a questão do consenso da equipe.