Botões do main não abrem outras activities

Olá, pessoal. Sou novo aqui no fórum, e esta é a primeira vez que posto aqui, e a que mais preciso também. Estou fazendo um curso onde aprendo várias linguagens e várias plataformas diferentes, e uma delas é a programação mobile, onde fazemos apps para Android. Porém eu sou péssimo nesse tipo de programação e não consigo fazer absolutamente nada. Eis que, como estamos no final do curso, temos sempre que apresentar um projeto para o professor, e dessa vez não foi diferente: preciso fazer um app para uma biblioteca e logo no começo já encontrei problemas: Não consigo fazer com que os botões da MainActivity abram nenhuma outra activity, e sempre que tento, o aplicativo para de funcionar. Vou deixar abaixo algumas especificações e o código e gostaria muto de saber se alguém poderia me ajudar nesse dilema:

Main:

package com.projeto.curso;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity implements OnClickListener{

@Override
protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	setContentView(R.layout.activity_main);
	
	Button botaoLeitores = (Button) findViewById(R.id.gerLeitores);
	Button botaoLivros = (Button) findViewById(R.id.gerLivros);
	Button botaoAutores = (Button) findViewById(R.id.gerAutores);
	Button botaoEmprestimos = (Button) findViewById(R.id.ctrlEmprestimos);
	
	botaoLeitores.setOnClickListener(this);
	botaoLivros.setOnClickListener(this);
	botaoAutores.setOnClickListener(this);
	botaoEmprestimos.setOnClickListener(this);
}

@Override
public void onClick(View v) {
	if(v.getId() == R.id.gerLeitores){
		Intent it = new Intent(this, LeitoresActivity.class);
		startActivity(it);
	}
	
	if(v.getId() == R.id.gerLivros){
		Intent it = new Intent(this, LivrosActivity.class);
		startActivity(it);
	}
	
	if(v.getId() == R.id.cadLeitores){
		Intent it = new Intent(this, CadastroActivity.class);
		startActivity(it);
	}
}

}

Activity que pretendo abrir:

package com.projeto.curso;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;

public class LeitoresActivity extends Activity implements OnClickListener{

@Override
protected void onCreate(Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	setContentView(R.layout.activity_leitores);
	
	Button cadastroClientes = (Button) findViewById(R.id.cadastroClientes);
	
	cadastroClientes.setOnClickListener(this);
	
	
}





@Override
public void onClick(View v) {
	Banco bd = new Banco(this);
	ArrayAdapter adapter = new ArrayAdapter<String>(this, 
				android.R.layout.simple_spinner_item, bd.buscaTodosNomes());
	Spinner listaNomes = (Spinner) findViewById(R.id.selecionaLeitor);
	listaNomes.setAdapter(adapter);
	}
	
}

Banco de dados:

package com.projeto.curso;
import java.util.ArrayList;

import android.annotation.TargetApi;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.DatabaseErrorHandler;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.os.Build;


public class Banco extends SQLiteOpenHelper{
	// Variável estática com o comando CREATE da tabela leitor

			private static String criaTabelaLeitores = "CREATE TABLE leitores("
					+ "cpf VARCHAR(15) NOT NULL PRIMARY KEY, "
					+ "nome VARCHAR(50) NOT NULL,"
					+ "email VARCHAR (50),"
					+ "telefone VARCHAR(20),"
					+ "endereco VARCHAR(100)"
					+ ");" ;

public Banco(Context context) {
	super(context, "BibliotecaBancada", null , 1);
}

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public Banco(Context context, String name, CursorFactory factory, int version,
		DatabaseErrorHandler errorHandler) {
	super(context, name, factory, version, errorHandler);
	
}

@Override
public void onCreate(SQLiteDatabase db) {
	db.execSQL(criaTabelaLeitores);
}

//Método para realizar um comando de INSERT na tabela Leitor
public boolean cadastraLeitor (String CPF, String nome, String email, String telefone, String endereco){
	boolean leitorCadastrado = false;
	
	//Acessando o banco de dados que foi montado para a aplicação
	SQLiteDatabase banco = getWritableDatabase();
	
	//Classe utilizada para passagem de valores
	ContentValues valores = new ContentValues();
	
	//Primeiro precisamos passar os valores e depois executar o comando INSERT
	//Passagem de valores
	
	valores.put("cpf", CPF);
	valores.put("nome", nome);
	valores.put("email", email);
	valores.put("telefone", telefone);
	valores.put("endereco", endereco);
	
	//Executa o comando INSERT no banco e verifica se foi alterado alguma coisa
				// nome_da_tabela          // valor_a_serem_inseridos
	if(banco.insert("leitores", null, valores) != -1){
		leitorCadastrado = true;
	}
	
	//Fecha a conexão do banco de dados
	banco.close();
	return leitorCadastrado;
	
}

//Método para realização de SELECT na tabela leitores
	public ArrayList<String> buscaTodosNomes(){
		ArrayList<String> todosNomes = new ArrayList<String>();
		SQLiteDatabase banco = getWritableDatabase(); //busca as tabelas do banco
		Cursor c = banco.rawQuery("SELECT nome FROM leitores", null);

		// Verificando se retornou alguma linha
		if(c != null){
			c.moveToFirst();
			do{
				todosNomes.add(c.getString(0));
			}while(c.moveToNext());
		}
		//Fecha a conexão para liberar o recurso
		banco.close();

		return todosNomes;
	}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
	
	
}



private static String criaTabelaLeitores = "CREATE TABLE livros("
					+ "codigo INT NOT NULL PRIMARY KEY IDENTITY, "
					+ "nome VARCHAR(50) NOT NULL,"
					+ "autor VARCHAR (50),"
					+ "editora VARCHAR(20),"
					+ ");" ;

public Banco(Context context) {
	super(context, "BibliotecaBancada", null , 1);
}

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public Banco(Context context, String name, CursorFactory factory, int version,
		DatabaseErrorHandler errorHandler) {
	super(context, name, factory, version, errorHandler);
	
}

@Override
public void onCreate(SQLiteDatabase db) {
	db.execSQL(criaTabelaLeitores);
}

//Método para realizar um comando de INSERT na tabela Leitor
public boolean cadastraLivro (int codigo, String nome, String autor, String editora){
	boolean livroCadastrado = false;
	
	//Acessando o banco de dados que foi montado para a aplicação
	SQLiteDatabase banco = getWritableDatabase();
	
	//Classe utilizada para passagem de valores
	ContentValues valores = new ContentValues();
	
	//Primeiro precisamos passar os valores e depois executar o comando INSERT
	//Passagem de valores
	
	valores.put("cpf", CPF);
	valores.put("nome", nome);
	valores.put("email", email);
	valores.put("telefone", telefone);
	valores.put("endereco", endereco);
	
	//Executa o comando INSERT no banco e verifica se foi alterado alguma coisa
				// nome_da_tabela          // valor_a_serem_inseridos
	if(banco.insert("livros", null, valores) != -1){
		livroCadastrado = true;
	}
	
	//Fecha a conexão do banco de dados
	banco.close();
	return livroCadastrado;
	
}

//Método para realização de SELECT na tabela leitores
	public ArrayList<String> buscaTodosLivros(){
		ArrayList<String> todosNomes = new ArrayList<String>();
		SQLiteDatabase banco = getWritableDatabase(); //busca as tabelas do banco
		Cursor c = banco.rawQuery("SELECT nome FROM livros", null);

		// Verificando se retornou alguma linha
		if(c != null){
			c.moveToFirst();
			do{
				todosLivros.add(c.getString(0));
			}while(c.moveToNext());
		}
		//Fecha a conexão para liberar o recurso
		banco.close();

		return todosLivros;
	}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
	
	
}

}

Estou programando com o Eclipse. Caso alguém possa me ajudar, serei muito grato. Me desculpem pelos textos e códigos longos e muito obrigado pela atenção de vocês.