Cara dei uma olhada e :
estes são os erros que achei:
*é necessário chaves quando if tiver mais que um comando,
*tipo dos teste if não estava relacionado a nada deveria ser cargo então,
*não coloque return 0, pois não retorna nada mesmo,
* falta citar outros para aumento (coloquei cod 313)
abaixo esta o seu algoritmo funcionando,
sua ideia de logica estava correta, apenas faltou um pouco de atenção.
ta valeu Tiago.
#include <stdio.h>
#include <stdlib.h>
int main()
{
float salario,aumento;
int tipo;
printf("digite seu salario: ");
scanf("%f",&salario);
printf("digite 300-gerente,307-engenheiro,312-tecnico,outro-313: ");
scanf("%d",&tipo);
if(tipo==300)
{
printf("salario antigo:%.2f",salario);
aumento=salario/100*10;
printf("seu salario sera de %.2f\n",(aumento+salario) );
}
else if(tipo==307)
{
printf("salario antigo:%.2f",salario);
aumento=salario/100*20;
printf("seu salario sera de %.2f\n",(aumento+salario) );
}
else if(tipo==312)
{
printf("salario antigo:%.2f",salario);
aumento=salario/100*30;
printf("seu salario sera de %.2f\n",(aumento+salario) );
}
else
{
aumento=salario/100*40;
printf("salario antigo:%.2f",salario);
printf("seu salario sera de %.2f\n",(aumento+salario) );
}
system("PAUSE");
}