Advertisement
Guest User

File prog

a guest
Jan 26th, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 6.17 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <locale.h>
  3. #define line printf("\n |-----------------------------------------------------------------------------------------------------------------------------------|");
  4. #define lineFile(x) fprintf(x, "\n |-----------------------------------------------------------------------------------------------------------------------------------|");
  5. #define Tickets printf("\n |-------------------------------------------------------------Ïîäïèñêà--------------------------------------------------------------|");
  6. #define TicketsFile(x) fprintf(x, "\n |-------------------------------------------------------------Ïîäïèñêà--------------------------------------------------------------|");
  7. #define Header printf("\n |Íàèì.ãàç.èëè æóðí.|...Òèï...|×èñëî íîìåðîâ|Ñòîèì.ïîäï.|Ñòîèì. äîñò.|×èñëî ïîäï.|Îáù.ñòîèì.ïîäï.|Îáù.ñòîèì.äîñò.|Îáù.ñòîèì. ïî÷ò.óñë|");
  8. #define HeaderFile(x) fprintf(x, "\n |Íàèì.ãàç.èëè æóðí.|...Òèï...|×èñëî íîìåðîâ|Ñòîèì.ïîäï.|Ñòîèì. äîñò.|×èñëî ïîäï.|Îáù.ñòîèì.ïîäï.|Îáù.ñòîèì.äîñò.|Îáù.ñòîèì. ïî÷ò.óñë|");
  9.  
  10. struct Podpiska {
  11.     int name;
  12.     char type[10];
  13.     int cnomerov;
  14.     int stpodp;
  15.     int stdost;
  16.     int chpodpis;
  17.     float obshstpodp;
  18.     float obshstdost;
  19.     float obshstpu;
  20. };
  21. struct Podpiska M;
  22.  
  23. void Vvod(int n)
  24. {
  25.     setlocale(LC_CTYPE, "rus");
  26.    
  27.     int i;
  28.     FILE* pin;
  29.     /*
  30.         printf("\n Íàèìåíîâàíèå ãàçåòû èëè æóðíàëà:");scanf("%d",&M.name);
  31.         fprintf(pin, " Íàèìåíîâàíèå ãàçåòû èëè æóðíàëà: %d", M.name);
  32.         printf("\n Òèï èçäàíèÿ(ãàçåòà èëè æóðíàë): ");scanf("%s", &M.type, 10);
  33.         fprintf(pin, "\n Òèï èçäàíèÿ(ãàçåòà èëè æóðíàë): %s", M.type);
  34.         printf("\n ×èñëî íîìåðîâ â ìåñÿö:");scanf("%d",&M.cnomerov);
  35.         fprintf(pin, "\n ×èñëî íîìåðîâ â ìåñÿö: %d", M.cnomerov);
  36.         printf("\n Ñòîèìîñòü ïîäïèñêè:");scanf("%d",&M.stpodp);
  37.         fprintf(pin, "\n Ñòîèìîñòü ïîäïèñêè: %d", M.stpodp);
  38.         printf("\n Ñòîèìîñòü äîñòàâêè íà îäèí ìåñÿö:");scanf("%d", &M.stdost);
  39.         fprintf(pin, "\n Ñòîèìîñòü äîñòàâêè íà îäèí ìåñÿö: %d", M.stdost);
  40.         printf("\n ×èñëî ïîäïèñ÷èêîâ èçäàíèÿ:");scanf("%d", &M.chpodpis);
  41.         fprintf(pin, "\n ×èñëî ïîäïèñ÷èêîâ èçäàíèÿ: %d", M.chpodpis);
  42.         printf("\n ×èñëî íîìåðîâ â ìåñÿö:");scanf("%d", &M.cnomerov);
  43.         fprintf(pin, "\n ×èñëî íîìåðîâ â ìåñÿö: %d", M.cnomerov);
  44.        
  45.         if ((pin = fopen("Base.bd", "r")) == 0){
  46.             printf("??????");
  47.             return;
  48.         }
  49.         TicketsFile(pin)
  50.         lineFile(pin)
  51.         HeaderFile(pin)
  52.         lineFile(pin)
  53.         fclose(pin);
  54.     */
  55.    
  56.     if ((pin = fopen("Base.bd", "w+")) == 0)
  57.     {
  58.         printf("Îøèáêà");
  59.         return;
  60.     }
  61.     TicketsFile(pin)
  62.     lineFile(pin)
  63.     HeaderFile(pin)
  64.     lineFile(pin)
  65.     for (i = 0; i < n; i++) {
  66.          printf("\n Íàèìåíîâàíèå ãàçåòû èëè æóðíàëà:");scanf("%d",&M.name);
  67.         //fprintf(pin, "%d", M.name);
  68.         printf("\n Òèï èçäàíèÿ(ãàçåòà èëè æóðíàë): ");scanf("%s", &M.type, 10);
  69.         //fprintf(pin, "%s", M.type);
  70.         printf("\n ×èñëî íîìåðîâ â ìåñÿö:");scanf("%d",&M.cnomerov);
  71.         //fprintf(pin, "%d", M.cnomerov);
  72.         printf("\n Ñòîèìîñòü ïîäïèñêè:");scanf("%d",&M.stpodp);
  73.         //fprintf(pin, "%d", M.stpodp);
  74.         printf("\n Ñòîèìîñòü äîñòàâêè íà îäèí ìåñÿö:");scanf("%d", &M.stdost);
  75.         //fprintf(pin, "%d", M.stdost);
  76.         printf("\n ×èñëî ïîäïèñ÷èêîâ èçäàíèÿ:");scanf("%d", &M.chpodpis);
  77.         //fprintf(pin, "%d", M.chpodpis);
  78.         M.obshstpodp = M.stpodp * M.chpodpis;
  79.         M.obshstdost = M.stdost * M.chpodpis;
  80.         M.obshstpu = M.obshstdost + M.obshstpodp;
  81.         fprintf(pin, "\n |%18d|%9.9s|%13d|%11.2d|%12.2d|%11.2d|%15.1f|%15.2f|%19.2f|", M.name, M.type,
  82.             M.cnomerov, M.stpodp, M.stdost, M.chpodpis, M.obshstpodp, M.obshstdost, M.obshstpu);
  83.     }
  84.     fclose(pin);
  85. return;
  86. }
  87.  
  88. void Vyvod() {
  89.     setlocale(LC_CTYPE, "rus");
  90.     int j = 0;
  91.     FILE* pin, * pout;
  92.  
  93.     pin = fopen("Base.bd", "r");
  94.     if (pin == 0) {
  95.         printf("Îøèáêà");
  96.         return;
  97.     }
  98.     pout = fopen("Print.bd", "w");
  99.     if (pout == 0){
  100.         printf("\nFile Prind.bd invalid");
  101.         return;
  102.     }
  103.     Tickets
  104.     line
  105.     Header
  106.     line
  107.     TicketsFile(pout)
  108.     lineFile(pout)
  109.     HeaderFile(pout)
  110.     lineFile(pout)
  111.  
  112.     fread(&M, sizeof(struct Podpiska), 1, pin);
  113.     for(j = 0; j < 3; j++) {
  114.         printf("\n |%18d|%9.9s|%13d|%11.2d|%12.2d|%11.2d|%15.1f|%15.2f|%19.2f|", M.name, M.type,
  115.             M.cnomerov, M.stpodp, M.stdost, M.chpodpis, M.obshstpodp, M.obshstdost, M.obshstpu);
  116.         fprintf(pout, "\n |%18d|%9.9s|%13d|%11.2d|%12.2d|%11.2d|%15.1f|%15.2f|%19.2f|", M.name, M.type,
  117.             M.cnomerov, M.stpodp, M.stdost, M.chpodpis, M.obshstpodp, M.obshstdost, M.obshstpu);
  118.     }
  119.     printf("\n");
  120.     fclose(pout);
  121.     fclose(pin);
  122.     return;
  123. }
  124.  
  125. int main()
  126. {
  127.     setlocale(LC_CTYPE, "rus");
  128.    
  129.     int key, n = 3;
  130.     do {
  131.         printf("\n __________");
  132.         printf("\n |--Ìåíþ--|");
  133.         printf("\n |1-Ââîä--|");
  134.         printf("\n |2-Âûâîä-|");
  135.         printf("\n |3-Âûõîä-|");
  136.         printf("\n Ââåäèòå íîìåð:");
  137.         scanf("%d", &key);
  138.         switch (key)
  139.         {
  140.             case 1:
  141.                 Vvod(n);
  142.                 break;
  143.             case 2:
  144.                 Vyvod();
  145.                 break;
  146.             case 3:  break;
  147.             default: printf("\n Îøèáêà... Íåâåðíûé íîìåð");
  148.         }
  149.     } while (key != 3);
  150.     printf("\n Çàâåðøåíèå...");
  151. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement