Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Nome do Arquivo: 1.c
- Nome do Aluno: Gabriel Cunha Bessa Vieira
- Matricula: 16/0120811
- Descrição: Lê o nome, salario, cargo, departamento e a data de admissao. Faz a média aritmética dos salarios dos funcionarios e printa os funcionarios que possuem salario maior que a média.
- */
- /*---------------------------------------------------------*/
- #include <stdio.h>
- #include <stdlib.h>
- typedef struct{
- char *nome, *cargo, *dpto, *admissao;
- double *salario;
- }database;
- void cadastro(int n, database *vetor_dados){
- int i;
- for(i = 0; i < n; i++){
- vetor_dados[i].nome = (char *) malloc(100*sizeof(char));
- printf("Informe o nome do %dº funcionário: ", i+1);
- scanf("%s", vetor_dados[i].nome);
- vetor_dados[i].salario = (double *) malloc(sizeof(double));
- printf("Informe o salario: ");
- scanf("%lf", vetor_dados[i].salario);
- vetor_dados[i].cargo = (char *) malloc(100*sizeof(char));
- printf("Informe o cargo: ");
- scanf("%s", vetor_dados[i].cargo);
- vetor_dados[i].dpto = (char *) malloc(100*sizeof(char));
- printf("Informe o departamento: ");
- scanf("%s", vetor_dados[i].dpto);
- vetor_dados[i].admissao = (char *) malloc(100*sizeof(char));
- printf("Informe a data de admissao: ");
- scanf("%s", vetor_dados[i].admissao);
- }
- }
- void media_funcinarios(int n, database *vetor_dados){
- int i, counter = 0, k = 0;
- double media = 0.0;
- for(i = 0; i < n; i++){
- media += *vetor_dados[i].salario;
- counter++;
- }
- media /= counter;
- printf("Lista dos funcionários que ganham mais que a média:\n");
- for(i = 0; i < n; i++){
- if(*vetor_dados[i].salario > media){
- printf("%d. %s\n", k, vetor_dados[i].nome);
- }
- free(vetor_dados[i].nome);
- free(vetor_dados[i].salario);
- free(vetor_dados[i].cargo);
- free(vetor_dados[i].dpto);
- free(vetor_dados[i].admissao);
- k++;
- }
- }
- int main(){
- database* data = (database *) malloc(100000*sizeof(database));
- int n;
- printf("Informe o número de funcionários da empresa: ");
- scanf("%d", &n);
- cadastro(n, data);
- media_funcinarios(n, data);
- free(data);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement