Advertisement
Guest User

Exercício Concurso de dança

a guest
Jul 25th, 2014
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.78 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3.  
  4. typedef struct Casal{
  5.     int cod;
  6.     char ent[16];
  7. }casal;
  8.  
  9. void escrever1 (){
  10.     int n, i;
  11.     FILE* fp;
  12.     casal x;
  13.     fp= fopen("concurso.cad", "wb");
  14.     if(fp==NULL){
  15.         printf("ERRO!");
  16.         exit(1);
  17.     }
  18.     printf("\nDigite a quantidade de casais: ");
  19.     scanf("%d", &n);
  20.     fwrite(&n, sizeof(int), 1, fp);
  21.     for(i=0; i<n; i++){
  22.         printf("\nDigite o codigo do casal: ");
  23.         scanf("%d", &x.cod);
  24.         printf("\nDigite a entidade do casal: ");
  25.         scanf("%s", &x.ent);
  26.         fwrite(&x, sizeof(casal), 1, fp);
  27.     }
  28.     fclose(fp);
  29. }
  30.  
  31. void escrever2 (){
  32.     FILE* fp, *av;
  33.     int i, n;
  34.     casal x;
  35.     float cav, dam, med;
  36.     fp = fopen("concurso.cad", "rb");
  37.     av = fopen("concurso.not", "wb");
  38.     fread(&n, sizeof(int), 1, fp);
  39.     fwrite(&n, sizeof(int), 1, av);
  40.     for(i=0; i<n; i++){
  41.         fread(&x, sizeof(casal), 1, fp);
  42.         printf("\nCodigo: %d", x.cod);
  43.         fwrite(&x, sizeof(casal), 1, av);
  44.         printf("\nDigite a nota da dama: ");
  45.         scanf("%f", &dam);
  46.         fwrite(&dam, sizeof(float), 1, av);
  47.         printf("\nDigite a nota do cavalheiro: ");
  48.         scanf("%f", &cav);
  49.         fwrite(&cav, sizeof(float), 1, av);
  50.         med= (dam + cav)/2.0;
  51.         fwrite(&med, sizeof(float), 1, av);
  52.     }
  53.     fclose(fp);
  54.     fclose(av);
  55. }
  56.  
  57. void Ler(){
  58.     FILE* rd;
  59.     int i, n;
  60.     casal x;
  61.     float cav, dam, med;
  62.     rd = fopen("concurso.not", "rb");
  63.     fseek (rd, 0, SEEK_SET);
  64.     fread(&n, sizeof(int), 1, rd);
  65.     for(i=0; i<n; i++){
  66.         fread(&x, sizeof(casal), 1, rd);
  67.         printf("\nCodigo: %d\nEntidade: %s", x.cod, x.ent);
  68.         fread(&dam, sizeof(float), 1, rd);
  69.         printf("\nNota da dama: %.2f", dam);
  70.         fread(&cav, sizeof(float), 1, rd);
  71.         printf("\nNota do cavalheiro: %.2f", cav);
  72.         fread(&med, sizeof(float), 1, rd);
  73.         printf("\nNota media: %.2f\n", med);
  74.     }
  75.     fclose(rd);
  76. }
  77.  
  78. int main(){
  79.     escrever1();
  80.     escrever2();
  81.     Ler();
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement