Как считать число из файла c
Регистрация: 31.05.2010
Сообщений: 15
Как считать int-овское число из файла в переменную? (Си)
В файле, содержится такая информация:
10 10
20 20
30 30
Что нужно: нужно поочередно считывать 2 числа из строчки, осуществлять некоторую процедуру «put(х,у)» и переходить на следующую строчку.
Как это выглядит:
FILE *in; in=fopen("text.txt","r"); char s = getc(in); //эта переменная - просто индикатор окончания файла. int x,y; while(s!=EOF)
Ну вот и как?) Как считать 2 числа, разделенные пробелом, в 2 разные переменные?
С++ Как извлекать числа из файла в числовой массив для дальнейшей манипуляции над этими числами?
https://inf-ege.sdamgia.ru/problem?id=37348
По ссылке содержится само задание и подкрепленный файл в формате txt
Нужно срочно для ЕГЭ . Как извлекать числа из файла в числовой массив для дальнейшего использования этих чисел ? Без C-стайла ,пожалуйста . И ,возможно ,ли сделать так со статическим массивом ? Или все -таки только коллекции ? С использованием библиотеки fstream Нужно просто ответить как считывать числа в файл на языке C++ ,а не решение этой задачи .
Я новичок ,кроме массивов больше ничего не знаю: ни векторы ,ни коллекции , ни списки.
Если с массивом не возможно , а со списком(list) возможно ?
- Вопрос задан более двух лет назад
- 792 просмотра
5 комментариев
Простой 5 комментариев
Евгений Шатунов @MarkusD Куратор тега C++
Считать число из файла и записать его в переменную на Си
Есть файл, который содержит целое число и больше ничего, например, 312567. Пытаюсь считать из него данные и записать в переменную а для дальнейшего использования — ничего не получается,- уже несколько часов разные варианты использую. Может кто-то поможет с работающим примером на С, т.к. есть другой код на С, который это значение будет использовать? Буду рад помощи. Код такой:
#include // библиотека для вывода на экран int main(void) < int a; FILE *k = fopen("/home/pi/c/file1.txt", "r"); // файл из которого читаем значение fscanf(k,"%d%",a); fclose(k); printf("значение %d\n", a); >
Отслеживать
218k 15 15 золотых знаков 118 118 серебряных знаков 229 229 бронзовых знаков
задан 9 апр 2017 в 13:50
3 1 1 серебряный знак 3 3 бронзовых знака
Считать значения из input.txt и записать в output.txt на C++
На олимпиадах по программированию для ввода данных в программу используют, как правило, файл с названием input.txt(содержит входные данные), а для вывода используется output.txt(содержит все выходные данные). В данной статье мы разберем, как нам брать данные из файла input.txt и записывать в output.txt.
Из input.txt в output.txt
Может показаться, что это неудобно, и проще всего организовать ввод данных через консоль, попросив об этом пользователя примерно таким сообщением «Введите значение N:». Однако, использование файлов input.txt и output.txt позволяет автоматизировать проверку ответа участника олимпиады, что в разы ускоряет подведение итогов.
Если Вы любите решать олимпиадные задачи, то Вам просто необходимо иметь шаблон такой программы, чтобы каждый раз не реализовывать её. Ежели Вы впервые столкнулись с этим, то мы сейчас разберем, как это всё делается.
Мы уже говорили, как считывать данные из файла и записывать данные в файл посредством функций стандартной библиотеки языка программирования C++. Давайте же применим наши знания в решении данной задачи.
Считывание и ввод данных из input.txt
Организуем ввод всех данных из файла input.txt в наши переменные и массивы. Я покажу, как считать разные типы данных: числа, строки, ряды чисел(для массива).
Итак, для начала создадим файл input.txt, откроем с помощью текстового редактора и заполним его различными значениями. Я разместил пару чисел на одной строке, одно число на следующей строке, 10 чисел еще на одной строке и строку текста на последней. Файл input.txt содержит следующее:
15 20 10 2 3 4 5 6 7 8 19 900001 123 Nicknixer.ru
Теперь напишем программу, которая будет брать все эти значения и заносить в нужные нам переменные.
Допустим, мне нужно занести первые два числа на первой строке(15 и 20) в переменные a и b соответственно.
Значение числа на второй строке(10) в переменную N, и при этом, договоримся, что на второй строке число указывает на количество чисел, размещенных на третей строке. То есть на третей строке у нас N чисел через пробел, их мы будем заносить в массив.
И, наконец, на четвёртой строке файла у нас расположено слово, его мы тоже занесем в переменную.
Теперь напишем программу, которая считает это всё и поместит в переменные, с которыми мы сможем работать. Я буду размещать код поэтапно, чтобы было понятно, что и где добавилось. Для начала Вы можете узнать как считывать из файла в C++.
Подключим необходимые заголовки
#include #include #include
int a,b,N;
Откроем файл input.txt для чтения
ifstream fin("input.txt");
Считаем первые два числа из файла input.txt в переменные a и b
fin >> a; fin >> b;
Разделителем чисел в файле служат пробелы. Поэтому просто выводим поток из fin прямо в переменные по порядку.
Считаем число со второй строчки в переменную N
fin >> N;
Указатель положения в файле сместился автоматически на следующую строчку и считал число.
То есть числа можно разделять пробелами или переносами строк, и просто выводить информацию по порядку из файла в соответствующие переменные.
Теперь определяем массив с размером N и вносим в него следующие 10 чисел из файла
int mass[N]; for(int i=0;i> mass[i]; >
В результате массив mass[] заполнился следующими 10-ю числами из файла(числами с третьей строки).
И теперь считаем следующую за всем этим слово
string msg; fin >> msg;
Теперь выведем значения всех переменных в консоль
cout cout
Полученные значения из файла