Записать числа файла в массив - C (СИ)
Формулировка задачи:
Привет всем!
Есть текстовый файл, в котором строчки такого вот формата
как разобрать его таким образом, чтобы в 9 переменных записались последовательно числа?
т.е. есть
и в них должны быть цифры строки из файла (если исходить из приведённой выше строки, то a1 = 49, a2 = 183, a3 = 46 и т.д.
общий алгоритм такой
P.S. Чисел в каждой строчке всегда 9
как это сделать?
Листинг программы
- ***
- {49,183,46,189,165,27,27,96,130}
- ***
Листинг программы
- int a1, a2, a3, a4, a5, a6, a7, a8, a9
Листинг программы
- открываю файл
- цикл (пока не закончится файл)
- читаю строчку
- выписываю из неё зачения для a1-a9
- что-то делаю с этими значениями
- конец цикла
Решение задачи: «Записать числа файла в массив»
textual
Листинг программы
- #include <stdio.h>
- int main(void)
- {
- char str[] = "{49,148,123,197,181,27,27,96,130},";
- int a1 = 0;
- int a2 = 0;
- int a3 = 0;
- int a4 = 0;
- int a5 = 0;
- int a6 = 0;
- int a7 = 0;
- int a8 = 0;
- int a9 = 0;
- printf("String: %s\n", str);
- sscanf(str, "%*c%d %*c%d %*c%d %*c%d %*c%d %*c%d %*c%d %*c%d %*c%d",
- &a1, &a2, &a3, &a4, &a5, &a6, &a7, &a8, &a9);
- printf("%d %d %d %d %d %d %d %d %d\n",
- a1, a2, a3, a4, a5, a6, a7, a8, a9);
- return 0;
- }
Объяснение кода листинга программы
В этом коде программа считывает строку, представленную в формате {49,148,123,197,181,27,27,96,130}, и сохраняет числа в массив. Вот список действий, которые выполняет код:
- Включает стандартную библиотеку ввода-вывода (stdio.h).
- Определяет точку входа в программу как main().
- Объявляет массив символов str[] со значением
{49,148,123,197,181,27,27,96,130}
, который представляет собой строку. - Объявляет девять переменных типа int (a1, a2, a3, a4, a5, a6, a7, a8, a9) для хранения чисел из строки.
- Выводит строку на экран с помощью функции printf().
- Использует функцию sscanf() для считывания чисел из строки в переменные a1, a2, a3, a4, a5, a6, a7, a8, a9.
- Выводит значения переменных a1, a2, a3, a4, a5, a6, a7, a8, a9 на экран с помощью функции printf().
- Завершает программу и возвращает 0.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д