Új hozzászólás Aktív témák
-
válasz
Briganti #571 üzenetére
Hali!
Az fscanf() arra is jó, ha változó darabszámú érték van soronként....
csak azért írtam a korábbi módszert, mert az egyik lehetőséget feltételeztem, azaz fix számú érték szerepel soronként. itt egy példa ami demonstrálja a másik lehetőséget.
(nem a legszebb, de a legáttekinthetőbb)
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE * FH;
int szamok[9];
if (!(FH=fopen("adat.txt","rt"))) {
printf("Nem lehet megnyitni a fajlt...\nkilepes");
exit(-1);
}
printf("%d",fscanf(FH,"%d;%d;%d;%d;%d;%d;%d;%d;%d;%d",
&szamok[0], &szamok[1], &szamok[2], &szamok[3], &szamok[4], &szamok[5], &szamok[6], &szamok[7], &szamok[8], &szamok[9]));
fclose(FH);
return 0;
}1. megnyitjuk a fájlt, ha nem lehet akkor hibával kilépünk
2. beolvassuk az első sorát a SZAMOK tömb-be illetve kiíratom hogy hány adatot sikerült beolvasni
3. lezárom a fájlt, kilépésez utóbbi lehetőség nagyon fontos. Az fscanf visszad egy egész értéket, ami azt tartalmazza hogy hány darab adatot tudott beolvasni
Ha az első sorban csak 1 adat volt, akkor 1-et ír ki, ha az első sorban 6 adat volt, akkor meg 6-ot ír ki a progi, stb, azaz tudod, hogy az adott sorban, hány adatod volt. Ezek bekerülnek a tömb-be, egy ciklussal végigjárva(aminek a ciklusszámlálója annyi, mint amennyit az fscanf() visszaadott) könnyen kikeresheted a legkisebbet.Ahhoz hogy ez menjen, persze kell tudnod, a szöveges fájlod egy sorában mennyi szám szerepelhet MAXIMÁLISAN. Ennyi elemszámú tömböt állíts elő és kész.
Fire
UI: bocs, hogy én is ide pakoltam a C-topic helyett...
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Samsung Galaxy S23 Ultra - non plus ultra
- Nem fogy az S25 Edge, mégis lesz S26+?
- Milyen billentyűzetet vegyek?
- Napelem
- One mobilszolgáltatások
- BestBuy ruhás topik
- Apple asztali gépek
- Xbox Series X|S
- Hitelkártyák használata, hitelkártya visszatérítés
- Mibe tegyem a megtakarításaimat?
- További aktív témák...
- Csere-Beszámítás! Olcsó számítógép játékra is akár! I3 12100 / GTX 1050Ti / 8GB DDR5
- 2tb nvme PCIe 4.0 ssd-k bontatlanul, Wd SN5000,
- Xiaomi Redmi Note 13 5G 8/256GB, Megkímélt, Kártyafüggetlen, Töltővel, Doboz, 1 Év Garanciával!
- Xiaomi Redmi Note 12 Pro+ 5G 8/256GB, Megkímélt, Kártyafüggetlen, Töltővel, Dobozzal, 1 Év Garancia!
- Nokia 8 Sirocco 6/128GB, Normál, Kártyafüggetlen, Töltővel, 1 Év Garanciával!
- GYÖNYÖRŰ iPhone 13 Pro 256GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3074, 100% Akkumulátor
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X3D 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- BESZÁMÍTÁS! Gigabyte GA-H610M i3 12100F 16GB DDR4 512GB SSD RX 6600 8GB Rampage SHIVA CM 600W
- BESZÁMÍTÁS! Apple Studio Display 27 5K Nanotexturált üveg monitor garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32GB RAM RX 7600 8GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest