Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.73 KB | None | 0 0
  1. #include<stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef struct str_ingrediente{
  5.         char nome[50];
  6.         char tipoMedida[50];
  7.         float qtd;
  8. }tipo_ingrediente;  
  9.        
  10. typedef struct str_receita{
  11.         tipo_ingrediente ingrediente[50];
  12.         char nome[50];
  13.         int qtdIngredientes;
  14.         char modoPreparo[255];        
  15. }tipo_receita;
  16.  
  17. void lerTXT();
  18. void escreveTXT(tipo_receita receita);
  19. tipo_receita criaReceita(tipo_receita receita);
  20.  
  21. main(){
  22.        tipo_receita receita;
  23.        receita=criaReceita(receita);
  24.        escreveTXT(receita);
  25.        lerTXT();
  26.        system("pause");
  27.        }
  28.  
  29. tipo_receita criaReceita(tipo_receita receita){
  30.              int i;
  31.              printf("Digite o nome da receita: ");
  32.              gets(receita.nome);
  33.              fflush(stdin);
  34.              printf("Digite a quantidade de ingredientes: ");
  35.              scanf("%d",&receita.qtdIngredientes);
  36.              for(i=0; i<receita.qtdIngredientes; i++){
  37.                        printf("Digite o nome do ingrediente %d: ", i+1);
  38.                        fflush(stdin);
  39.                        gets(receita.ingrediente[i].nome);
  40.                        fflush(stdin);
  41.                        printf("Digite a quantidade do ingrediente: ");
  42.                        scanf("%f",&receita.ingrediente[i].qtd);
  43.                        printf("Digite a medida: ");
  44.                        fflush(stdin);
  45.                        gets(receita.ingrediente[i].tipoMedida);
  46.                        fflush(stdin);
  47.              }
  48.              printf("Digite o modo de preparo: ");
  49.              gets(receita.modoPreparo);
  50.              return receita;
  51. }
  52.  
  53. void escreveTXT(tipo_receita receita){
  54.      FILE* arq;
  55.      int i;
  56.      
  57.      arq=fopen("livro.txt","w");
  58.      
  59.      if(arq == NULL){
  60.             printf("NAO FOI POSSIVEL ABRIR O ARQUIVO");
  61.             exit(1);
  62.             }
  63.      
  64.      fprintf(arq,"%s\n",receita.nome);
  65.      fprintf(arq,"%d\n",receita.qtdIngredientes);
  66.      for(i=0;i<receita.qtdIngredientes;i++){
  67.          fprintf(arq,"%s ",receita.ingrediente[i].nome);
  68.          }
  69.      fprintf(arq,"\n");    
  70.      for(i=0;i<receita.qtdIngredientes;i++){
  71.          fprintf(arq,"%f ",receita.ingrediente[i].qtd);
  72.          }      
  73.      fprintf(arq,"\n");
  74.      for(i=0;i<receita.qtdIngredientes;i++){
  75.          fprintf(arq,"%s ",receita.ingrediente[i].tipoMedida);
  76.          }                
  77.      fprintf(arq,"\n",receita.qtdIngredientes);
  78.      fprintf(arq,"%s",receita.modoPreparo);
  79.      fclose(arq);
  80.      
  81. }
  82.  
  83. void lerTXT(){
  84.      FILE* arq2;
  85.      int i;
  86.      tipo_receita receita;
  87.      
  88.      arq2=fopen("livro.txt","r");
  89.      
  90.      if(arq2 == NULL){
  91.             printf("NAO FOI POSSIVEL ABRIR O ARQUIVO");
  92.             exit(1);
  93.             }
  94.      
  95.      fgets(receita.nome,50,arq2);
  96.      fscanf(arq2,"%d",&receita.qtdIngredientes);
  97.      for(i=0;i<receita.qtdIngredientes;i++){
  98.          fscanf(arq2,"%s",receita.ingrediente[i].nome);
  99.         }
  100.            
  101.      for(i=0;i<receita.qtdIngredientes;i++){
  102.          fscanf(arq2,"%f",&receita.ingrediente[i].qtd);
  103.         }
  104.      
  105.      for(i=0;i<receita.qtdIngredientes;i++){
  106.          fscanf(arq2,"%s",receita.ingrediente[i].tipoMedida);
  107.         }
  108.      fgets(receita.modoPreparo,255,arq2);  
  109.      
  110.      printf("NOME: %s\n",receita.nome);
  111.      printf("QNT DE ING: %d\n",receita.qtdIngredientes);
  112.       for(i=0;i<receita.qtdIngredientes;i++){
  113.          printf("%s ",receita.ingrediente[i].nome);
  114.          }
  115.      printf("\n");    
  116.      for(i=0;i<receita.qtdIngredientes;i++){
  117.          printf("%f ",receita.ingrediente[i].qtd);
  118.          }      
  119.      printf("\n");
  120.      for(i=0;i<receita.qtdIngredientes;i++){
  121.          printf("%s ",receita.ingrediente[i].tipoMedida);
  122.          }
  123.      printf("\nMODO DE PREPARO: %s\n",receita.modoPreparo);
  124.    
  125. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement