Trabalho Algoritmos III Edemar
Por: grumaadriano • 20/4/2016 • Trabalho acadêmico • 1.789 Palavras (8 Páginas) • 473 Visualizações
/ULBRA Canoas 2013/2
//Disciplina: Aldoritmos e Programação III
//Professor: Edemar Costa
//Curso: Ciência da Computação
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//Struct
typedef struct pessoa {
char nome[10];
char endereco[80];
char telefone[8];
float salario;
int idade;
char sexo[2];
} cadastro;
//Funções
//Menu principal
int menu(int n_funcionarios){
int op;
puts("Cadastro e Consulta de Funcionarios:");
printf("1. Cadastrar Funcionarios (%d)\n", 10-n_funcionarios);
puts("2. Funcionario com maior idade");
puts("3. Buscar funcionario");
puts("4. Funcionarios homens");
puts("5. Funcionarios com salario acima de 1000,00");
puts("6. Sair");
printf("Qual sua opcao: ");
scanf("%d", &op);
return op;
}
//Função imprime funcionario
void imprime_funcionario(int id, cadastro funcionarios[]){
printf("Nome: %s\n", funcionarios[id].nome);
printf("Endereco: %s\n", funcionarios[id].endereco);
printf("Telefone: %s\n", funcionarios[id].telefone);
printf("Salario: %.2f\n", funcionarios[id].salario);
printf("Idade: %d\n", funcionarios[id].idade);
printf("Sexo: %s\n", funcionarios[id].sexo);
}
//Função cadastramento de funcionários
void cadastro_funcionarios(int *n_funcionarios, cadastro funcionarios[]){
if(*n_funcionarios < 10){
//Nome
printf("Nome: ");
fflush(stdin);
gets(funcionarios[*n_funcionarios].nome);
//Endereço
printf("Endereco: ");
fflush(stdin);
gets(funcionarios[*n_funcionarios].endereco);
//Telefone
printf("Telefone: ");
fflush(stdin);
gets(funcionarios[*n_funcionarios].telefone);
//Salario
printf("Salario: ");
fflush(stdin);
scanf("%f", &funcionarios[*n_funcionarios].salario);
//Idade
printf("Idade: ");
fflush(stdin);
scanf("%d", &funcionarios[*n_funcionarios].idade);
//Sexo
printf("Sexo (M/F): ");
fflush(stdin);
gets(funcionarios[*n_funcionarios].sexo);
(*n_funcionarios)++;
}
else
puts("Numero maximo de funcionarios cadastrados!");
}
//Função buscar funcionario com maior idade
void mais_velho(int n_funcionarios, cadastro funcionarios[]){
int i, mais_velho = 0;
if(n_funcionarios > 0){
for(i = 0; i < n_funcionarios; i++)
if(funcionarios[i].idade > funcionarios[mais_velho].idade)
mais_velho = i;
imprime_funcionario(mais_velho, funcionarios);
}
else
puts("Nao ha funcionarios cadastrados!");
}
//Função buscar funcionario
void busca_funcionario(int n_funcionarios, cadastro funcionarios[]){
if(n_funcionarios > 0){
int i, id = -10;
char nome[10];
printf("Nome do funcionario: ");
fflush(stdin);
...