Trabalhando com arquivo em c

746 palavras 3 páginas
/**
1- Faça um programa para manipular os dados de funcionários de uma empresa em um arquivo binário com registros com o seguinte formato:
- código (int)
- nome (101 caracteres)
- sexo (1 caracter => M/F)
- salário (float)
Defina funções para:
a) Inserir um funcionário no arquivo;
b) Exibir os dados de todos os funcionários;
c) Dado o código de um funcionário e uma porcentagem (p), aumentar o salário do funcionário em p %;
d) Contar quantos funcionários do sexo masculino (M) e feminino (F) há cadastrados;
e) Somar o salário de todos os funcionários;
f) Crie dois arquivos binários separando os funcionários:
- do sexo masculino devem ser gravados no arquivo “masc.dat”;
- do sexo feminino devem ser gravados no arquivo “fem.dat”.
g) Crie dois arquivos texto (formatados – fprintf) separando os funcionários:
- salário menor que 1000 reais devem ser gravados no arquivo “menor.txt”;
- salário maior ou igual a 1000 reais devem ser gravados no arquivo “maior.txt”.
*/
#include
#include
#include typedef struct func{ int codigo; char nome[101]; char sexo; float salario;
}func;
void grava_registro()
{
func F; FILE * arquivo; printf("\n\nDigite o codigo: "); scanf("%d",&F.codigo); printf("\nDigite o nome: "); fflush(stdin); gets(F.nome); printf("\nDigite o sexo (F/M): "); scanf("%c",&F.sexo); printf("\nDigite o salario: "); scanf("%f",&F.salario); arquivo=fopen("funcionario.dat", "ab"); if (arquivo == NULL) { arquivo = fopen("funcionario.dat", "wb"); if (arquivo == NULL) { printf("Erro abrindo arquivo"); getch(); exit(0); } } fwrite(&F, sizeof(F), 1,arquivo); fclose(arquivo);
}
void listar()
{
func F; FILE *arquivo; arquivo=fopen("funcionario.dat","rb"); if(arquivo ==NULL){ printf("Erro ao

Relacionados

  • Trabalhando com arquivos em c
    1780 palavras | 8 páginas
  • Introdu O Programa O C
    12557 palavras | 51 páginas
  • Aula 09 Circuitos El Tricos 2015 1
    765 palavras | 4 páginas
  • C SHARP - Linguagem de Programacao
    2031 palavras | 9 páginas
  • Java Básico na Prática
    1322 palavras | 6 páginas
  • Apostila c#
    2051 palavras | 9 páginas
  • System Analitycs
    1810 palavras | 8 páginas
  • Técnico em Informatica
    25731 palavras | 103 páginas
  • Walter benjamin
    3781 palavras | 16 páginas
  • PROCEDIMENTO MOLDE NX
    543 palavras | 3 páginas