Galera alguém poderia me ajudar tenho que fazer um programa pra facul que calcule e mostre a gratificação por tempo de serviço do funcionário porem da um erro no if ele não cai no if certo parece que não reconhece a condição estabelecida Olha ae.
#include<stdio.h>
#include<stdlib.h>
main() {
float slbruto,imposto,slfamilia,slliquido,gratif;
int tpservico;
char sexo[1];
printf("Digite o salario bruto: ");
scanf ("%f",&slbruto);
printf("Quantos anos de serviço: ");
scanf("%f",&tpservico);
printf("Digite M ou F: ");
scanf("%s",sexo);
if (slbruto < 200){
printf("\n isento de imposto");
}
else if ((slbruto > 200) && (slbruto < 450)) {
imposto = slbruto * 3/100;
printf("imposto %.2f",imposto);
}
else if ((slbruto > 450 ) && (slbruto <=700)){
imposto = slbruto * 8/100;
printf("imposto=%.2f",imposto);
}
else if (slbruto >700){
imposto = slbruto * 12/100;
printf("imposto %.2f",imposto);
}
if ((slbruto <= 500) && (tpservico <=4) && (sexo =="M") ||(sexo =="m")){
gratif = 23;
printf("\nGratificação:%f",gratif);
}
else if ((slbruto <= 500) && (tpservico >4) && (sexo =="M") ||(sexo =="m")){
gratif = 35;
printf("\nGratificação:%f",gratif);
}
else if ((slbruto <= 500) && (tpservico <=4) && (sexo =="F") || (sexo =="f")){
gratif = 28;
printf("\nGratificação:%f",gratif);
}
else if ((slbruto <= 500) && (tpservico >4) && (sexo =="F") ||(sexo =="f")){
gratif = 33;
printf("\nGratificação:%f",gratif);
}
else if ((slbruto > 500) && ( tpservico <=3) && (sexo ==" M") || (sexo ==" m")){
gratif = 20;
printf("\nGratificação:%f",gratif);
}
else if ((slbruto > 500) && ( tpservico >3) && (sexo =="M") ||(sexo =="m")){
gratif = 30;
printf("\nGratificação:%.2f",gratif);
}
else if ((slbruto > 500) && (tpservico <=3) && (sexo =="F") ||(sexo =="f")){
gratif = 25;
printf("\nGratificação:%f",gratif);
}
else if ((slbruto > 500) && (tpservico >3) && (sexo =="F") ||(sexo =="f")){
gratif = 40;
printf("\nGratificação:%f",gratif);
}
}
alguém me ajude!!!