#include #include #define MAX_FUNC 100 typedef struct { char Nome[50]; double Salario; } func; func melhor_salario; // Exemplo: melhor_salario.Salario=50000.00; func folha_pgto[MAX_FUNC]; // folha_pgto[0].Salario=0.0; double maior_salario(int tot) { double maior; int i; maior=folha_pgto[0].Salario; for (i=0; i < tot; i++) if (folha_pgto[i].Salario > maior) maior=folha_pgto[i].Salario; return(maior); } int main() { char resp[4]; int i,total; int reajuste; int nrofunc; printf (">> Leitura de Dados <<\n\n"); i=0; while(i < MAX_FUNC) { printf("Digite os dados do funcionario %d:\n",i+1); printf("Nome: "); scanf ("%s",folha_pgto[i].Nome); printf("Salario: "); scanf ("%lf",&folha_pgto[i].Salario); i++; printf("Deseja entrar mais dados (s/n)?"); scanf ("%s",resp); if ((resp[0] == 'n') || (resp[0] == 'N')) break; } total=i; printf("Total: %d\n",total); printf ("\n\n>> Ajustando Salarios <<\n\n"); for (i=0; i < total; i++) { if (folha_pgto[i].Salario < 1000.0) { folha_pgto[i].Salario = folha_pgto[i].Salario * 1.15; printf("Funcionario %d - Reajuste 15%% - Novo Salario: %.2lf\n", i+1,folha_pgto[i].Salario); } else if (folha_pgto[i].Salario <= 5000.0) { folha_pgto[i].Salario = folha_pgto[i].Salario * 1.10; printf("Funcionario %d - Reajuste 10%% - Novo Salario: %.2lf\n", i+1,folha_pgto[i].Salario); } else { printf("Funcionario %d - SEM Reajuste - Salario: %.2lf\n", i+1,folha_pgto[i].Salario); } } printf("\n\n>> Folha de Pagamento <<\n\n"); for (i=0; i < total; i++) printf("Func. %d - Nome: %s - Salario: %.2lf\n", i+1, folha_pgto[i].Nome, folha_pgto[i].Salario); printf("Maior Salario: %.2lf\n",maior_salario(total)); printf("\n"); system("PAUSE"); return 0; }