Olá Tânia !
Tenho algumas considerações a fazer:
1) Eu colocaria o MessageBox.Show no final de tudo após o calculo de modo a evitar código duplicado, isso vai de encontro as melhores praticas.
2) Eu enfatizaria com parênteses deixando claro a operação de divisão:
imposto = valorDaNotaFiscal * (2.8 / 100);
3) Outra questão é que o exercício pediu o valor do imposto é não da nota fiscal:
private void button3_Click(object sender, EventArgs e){
double valorDaNotaFiscal = 40000;
double imposto = 0;
if (valorDaNotaFiscal < 1000){
imposto = valorDaNotaFiscal * (2 / 100);
}else if (valorDaNotaFiscal >= 1000 && valorDaNotaFiscal < 3000){
imposto = valorDaNotaFiscal * (2.5 / 100);
}else if (valorDaNotaFiscal >= 3000 && valorDaNotaFiscal < 7000){
imposto = valorDaNotaFiscal * (2.8 / 100);
}else if (valorDaNotaFiscal >= 7000){
imposto = valorDaNotaFiscal * (3 / 100);
}
MessageBox.Show("Imposto a ser pago: " + imposto);
}
Espero ter ajudado !
Atenciosamente, Joao.