{"id":791,"date":"2015-02-12T22:45:30","date_gmt":"2015-02-12T20:45:30","guid":{"rendered":"http:\/\/www.blue.pri.ee\/ttu\/?page_id=791"},"modified":"2024-08-12T16:03:20","modified_gmt":"2024-08-12T14:03:20","slug":"mitme-faili-korraga-kasutamine","status":"publish","type":"page","link":"https:\/\/blue.pri.ee\/ttu\/programmeerimine-i\/koodinaited\/mitme-faili-korraga-kasutamine\/","title":{"rendered":"Mitme faili korraga kasutamine"},"content":{"rendered":"<p>Antud n\u00e4itekood loeb andmefailist j\u00e4rjest ridu ning juhul kui tuvastab \u00f5pilase, kes sai 5, salvestab selle teise faili.<\/p>\n<p>Andmefaili sisu formaadiga &lt;nimi&gt; &lt;hinne&gt;<\/p>\n<pre class=\"toolbar:1 lang:c highlight:0 decode:true\" title=\"Data file: grades.txt\">Marju 4\r\nOlga 5\r\nToomas 3\r\nHelen 2\r\nPeeter 5\r\nAlbert 4\r\nMadis 5<\/pre>\n<p>M\u00e4rka programmis j\u00e4rgnevat:<\/p>\n<ul>\n<li>Enne teist andmefaili ei avata kui esimese avanemises on veendutud<\/li>\n<li>Kui v\u00e4ljundfaili avamine eba\u00f5nnestub, suletakse esmalt sisendfail ning alles seej\u00e4rel sulgetakse programm<\/li>\n<li>M\u00e4rka ka, et antud programm on tundlik puhvri \u00fclet\u00e4itumise r\u00fcnnakutele (pole selle n\u00e4ite raames oluline)<\/li>\n<\/ul>\n<pre class=\"lang:c decode:true \" title=\"Program: grades.c\">\/**\r\n * File:        grades.c\r\n * Author:      Risto Heinsar\r\n * Created:     12.02.2015\r\n * Modified:    12.08.2024\r\n *\r\n * Description: Sample code using multiple file pointers at the same time.\r\n *              It finds the students who got 5 as the grade for the subject\r\n *              and outputs it to another file.\r\n *\/\r\n\r\n#include &lt;stdio.h&gt;\r\n#include &lt;stdlib.h&gt;\r\n\r\n\/* Names of files *\/\r\n#define F_INPUT \"grades.txt\"\r\n#define F_OUTPUT \"fivers.txt\"\r\n\r\n\/* Exit failure codes *\/\r\n#define EXIT_INPUT_FAIL -1\r\n#define EXIT_OUTPUT_FAIL -2\r\n\r\n\/* Name buffer length *\/\r\n#define NAME_LEN 128\r\n\r\nint main(void)\r\n{\r\n    \/* Declare file pointer and attempt to open a file *\/\r\n    FILE *fi = fopen(F_INPUT, \"r\");\r\n    \r\n    \/* Check if it was opened successfully *\/\r\n    if (fi == NULL)\r\n    {\r\n        printf(\"Error opening input file \\\"%s\\\"\\n\", F_INPUT);\r\n        exit(EXIT_INPUT_FAIL);\r\n    }\r\n    \r\n    \/* Open and check for output file *\/\r\n    FILE *fo = fopen(F_OUTPUT, \"w\");\r\n    if (fo == NULL)\r\n    {\r\n        printf(\"Error opening output file\\\"%s\\\"\\n\", F_OUTPUT);\r\n        \r\n        \/* Since fi was opened, we need to close it before exit *\/\r\n        fclose(fi);\r\n        exit(EXIT_OUTPUT_FAIL);\r\n    }\r\n    \r\n    int grade;\r\n    char name[NAME_LEN];\r\n    \/* Read the names and grades *\/\r\n    while (fscanf(fi, \"%s %d\", name, &amp;grade) == 2)\r\n    {\r\n        if (grade == 5)\r\n        {\r\n            fprintf(fo, \"%s %d\\n\", name, grade);\r\n        }\r\n    }\r\n\r\n    \/* Close the files before exiting *\/\r\n    fclose(fi);\r\n    fclose(fo);\r\n    \r\n    return EXIT_SUCCESS;\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Antud n\u00e4itekood loeb andmefailist j\u00e4rjest ridu ning juhul kui tuvastab \u00f5pilase, kes sai 5, salvestab selle teise faili. Andmefaili sisu formaadiga &lt;nimi&gt; &lt;hinne&gt; Marju 4 Olga 5 Toomas 3 Helen 2 Peeter 5 Albert 4 Madis 5 M\u00e4rka programmis j\u00e4rgnevat: Enne teist andmefaili ei avata kui esimese avanemises on veendutud Kui v\u00e4ljundfaili avamine eba\u00f5nnestub, suletakse &hellip; <a href=\"https:\/\/blue.pri.ee\/ttu\/programmeerimine-i\/koodinaited\/mitme-faili-korraga-kasutamine\/\" class=\"more-link\">Loe edasi <span class=\"screen-reader-text\">Mitme faili korraga kasutamine<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":32,"menu_order":12,"comment_status":"closed","ping_status":"closed","template":"page-templates\/code-width.php","meta":{"footnotes":""},"class_list":["post-791","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/pages\/791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/comments?post=791"}],"version-history":[{"count":2,"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/pages\/791\/revisions"}],"predecessor-version":[{"id":9456,"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/pages\/791\/revisions\/9456"}],"up":[{"embeddable":true,"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/pages\/32"}],"wp:attachment":[{"href":"https:\/\/blue.pri.ee\/ttu\/wp-json\/wp\/v2\/media?parent=791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}