cpp כיצד לחפש דרך קובץ הטקסט


תשובה 1:

הקוד שלי לשאלתך:

#לִכלוֹל #לִכלוֹל #לִכלוֹל באמצעות std namespace;int main (){ ios :: sync_with_stdio (שקר);unmormed_map נתונים; סנפיר ifstream; fin.open ("input.txt", ios :: in); ערך ארוך 1, ערך 2; סנפיר >> value1; בעוד (סנפיר) { סנפיר >> value2; נתונים [value1] = value2; סנפיר >> value1; } cout < החזר 0;}

מה עשיתי? צור מפה לא מסודרת. קרא את כל הערכים מהקובץ ושמור אותם ב- unordered_map. פלט את הערך במיקום 8.

שיטה 2: אם אתה לא רוצה להשתמש ב- unorded_map ולא רוצה לאחסן את הנתונים בשום מקום, בדוק את הקוד הזה:

#לִכלוֹל #לִכלוֹל באמצעות std namespace;int main (){ ios :: sync_with_stdio (שקר); סנפיר ifstream; fin.open ("input.txt", ios :: in); ערך ארוך 1; סנפיר >> value1; בעוד (סנפיר) { אם (ערך 1 == 8) { סנפיר >> value1; cout < לשבור; } סנפיר >> ערך 1 >> ערך 1; } החזר 0;}

תשובה 2:

אתה זקוק למערך של אובייקטים של זוג-ערך מפתח, כגון מפה. מצא שיטת קו קריאה לקרוא את כל השורות ולאחסן אותן במפה על ידי פיצול המחרוזת באמצעות מפרידי שטח כדי לקבל מפתח ולהעריך את שניהם.

הדרך השנייה תהיה לקרוא את הקובץ בעת הצורך, במיוחד עבור קובץ גדול מאוד. התחל לקרוא מלמעלה ובכל שורה, בדוק את התו הראשון, אם זה המקש הרצוי, ואז קבל את שאר השורה אחרי הרווח.

סליחה, אין קטע קוד, זה שיעורי הבית שלך.


תשובה 3:

פתח קובץ ... txt

זרם f;

char א [100], c;

cin >> c; // למשל 8 התו הראשון של השורה

f.open (....);

f.getline (a, 100);

אם (a [0] == c)

{

עבור (i = 0; i <100; i ++)

cout <

}

f.close ();

אני מקווה שזה עובד לא ניסיתי את זה. אבל התחביר שלו נכון.


תשובה 4:

היי חבר, אתה מפרסם את השאילתה במקום הלא נכון. שֶׁלָה

הצפת מחסנית

שאתה צריך.

גם אתה יכול לנסות

גוגל

.

http://bit.ly/1zHqBQG

שמור על שני האתרים שהוזכרו לעיל בהישג יד איתך. תוכל לפתור הרבה יותר משימות כאלה.


תשובה 5:

אני בנייד, אז אני לא יודע איך לעצב קוד כאן, אבל בכל מקרה אתן לך רמז.

בעוד (fscanf (קלט, "% d% l% l \ n", & value1, & value2, & value3)! = EOF) { // להבין את השאר בעצמך}

עריכה: הרגע הבנתי שהערך השני הוא int ארוך.

עריכה 2: פשוט הבנתי שיש שלושה ערכים בסך הכל.


תשובה 6:

האם זו מטלת קולאז '?

בכל מקרה, לא הולך לתת קוד אמיתי. אם הקובץ קטן מספיק (כפי שמופיע בדוגמה, <100 רשומות, כל int -> int maping), טען אותו למפה (השתמש ב- ifstream). מאוחר יותר בכל פעם שצריך, קבל את הערך מהמפה