Alleles are basically subtypes of a gene. At the time of Mendel, the molecular nature of inheritance was not known so the original definition of gene refers to "some" inheritable molecular entity inside the organism that is responsible for a trait. Alleles are different "flavours" of a given gene. For example there is a gene for flower colour, there can be different alleles which give rise to different colours (this is a highly simplified example). Genotype is a configuration of alleles whereas the phenotype is the effect that is seen.
With the knowledge of molecular genetics superimposed on these basic concepts a gene would basically be a well defined part of the genome (DNA) which is responsible for a molecular trait. Alleles are the actual sequence variants of this genomic region (not considering translocations here).
This is my justification on correctness and incorrectness of different points, based on current knowledge of molecular genetics:
a. Incorrect. Genes need not necessarily code for proteins. There are non-coding RNAs
b. Incorrect. Trait is a qualitative feature. Phenotype is the manifestation of a trait. Genes and genotypes are the causes of a trait and not traits themselves.
c. Incorrect. Same as above.
d. Incorrect. As per the definition, alleles are variants of a gene and they have to be of the same molecular nature as the genes. However, if we forget the semantics then this may seem like a more apt definition because the variations in traits arise not just because of the gene sequence but also the amino acids. However there is a flaw in this logic and the counter points be:
- This scheme would not be inheritable (RNA editing/alternative splicing/PTM etc).
- It has been shown that even synonymous mutations can have different phenotypes. (Plotkin and Kudla. 2011)
- This does not consider non-coding RNAs
e. More or less correct (not in a very strict sense but fine for most discussions. Gene is not really a nucleotide sequence. Gene is an annotated region of a genome which has a defined sequence. This is similar to saying that object is mass. Object has a mass; object is not mass. This is just semantics and, as I said, not too important for general discussions.)