Kod: |
#include <stdio.h>
int main(void){ FILE *fin, *fout; char c; fin = fopen("pgombiic.in", "rt"); fout = fopen("pgombiic.out", "wt"); while (fscanf(fin, "%c", &c) != EOF) { if (c != 'a' && c != 'c' && c != 'g' && c != 'o') { fprintf(fout, "%c", c); } } fclose(fin); fclose(fout); return 0; } |
Kod: |
fopen("pgombiic.in", "rt"); |
Kod: |
fopen("pgombiic.in", "r"); |
Kod: |
while (fscanf(fin, "%c", &c) != EOF) { .... }
|
Citat: |
The fscanf function returns the value of the macro EOF if an input failure occurs
before any conversion. Otherwise, the function returns the number of input items assigned, which can be fewer than provided for, or even zero, in the event of an early matching failure. |
Citat: |
Funkcija fscanf() vraca broj polja (formata) koji su prepoznati
i kojima je pridana vrijednost. Ukoliko je program dosao do kraja datoteke koju cita, povratna vrijednost ce biti EOF (naziv iza kojeg se “skriva” vrijednost −1). |
Kod: |
while (fscanf(fin, "%c", &c) != EOF) { .... } |
Kod: |
while (fscanf(fin, "%c", &c) > 0) { .... } |
vsego (napisa): |
Skripta je malo neprecizna. Kako pise u man-u (ovo prvo sto si citirao), EOF vrati ako dodje do kraja datoteke prije prve konverzije. Ovdje je konverzija %c odmah na pocetku, pa bi ti trebao vratiti nulu. |
Kod: |
#include <stdio.h>
int main(void){ FILE *fin; char c; int ret; fin = fopen("test.txt", "r"); while (1) { printf("%d\n", ret = fscanf(fin, "%c", &c)); if (ret == 0) break; } return 0; } |
Kod: |
#include <stdio.h>
int main(void){ FILE *fin; char c; int ret; fin = fopen("test.txt", "r"); while (1) { printf("%d\n", ret = fscanf(fin, "%c", &c)); if (ret == EOF) break; } return 0; } |
vsego (napisa): |
Obrni-okreni, >0 bi ti gore trebalo raditi. ![]() |
Kod: |
dfdf
adfa df |
gflegar (napisa): | ||
kako treba izgledati .out datoteka za .in:
Zadatak:Napišite program koji čita datoteku "wxwrpiqh.in", te ju prepisuje u datoteku "wxwrpiqh.out" tako da u prepisivanju sva pojavljivanja stringa "df" zamijeni stringom "ecucra". |
Kod: |
$ cat wxwrpiqh.in
dfdf adfa df $ sed 's/df/ecucra/g' wxwrpiqh.in ecucraecucra aecucraa ecucra |
Gino (napisa): |
nije li poanta zadace maksimalnio si otezat? ![]() |
output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.