Записать числа файла в массив - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Привет всем! Есть текстовый файл, в котором строчки такого вот формата
***
{49,183,46,189,165,27,27,96,130}
***
как разобрать его таким образом, чтобы в 9 переменных записались последовательно числа? т.е. есть
int a1, a2, a3, a4, a5, a6, a7, a8, a9
и в них должны быть цифры строки из файла (если исходить из приведённой выше строки, то a1 = 49, a2 = 183, a3 = 46 и т.д. общий алгоритм такой
открываю файл

цикл (пока не закончится файл)
читаю строчку
выписываю из неё зачения для a1-a9
что-то делаю с этими значениями
конец цикла
P.S. Чисел в каждой строчке всегда 9 как это сделать?

Решение задачи: «Записать числа файла в массив»

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}, и сохраняет числа в массив. Вот список действий, которые выполняет код:

  1. Включает стандартную библиотеку ввода-вывода (stdio.h).
  2. Определяет точку входа в программу как main().
  3. Объявляет массив символов str[] со значением {49,148,123,197,181,27,27,96,130}, который представляет собой строку.
  4. Объявляет девять переменных типа int (a1, a2, a3, a4, a5, a6, a7, a8, a9) для хранения чисел из строки.
  5. Выводит строку на экран с помощью функции printf().
  6. Использует функцию sscanf() для считывания чисел из строки в переменные a1, a2, a3, a4, a5, a6, a7, a8, a9.
  7. Выводит значения переменных a1, a2, a3, a4, a5, a6, a7, a8, a9 на экран с помощью функции printf().
  8. Завершает программу и возвращает 0.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.071 из 5
Похожие ответы