У меня проблемы с попыткой выяснить, как искать файлы с частичными именами в каталоге. Мое назначение вставлено ниже, а также с тем, что у меня есть до сих пор. Я знаю, как составить список каталогов, мне просто нужно знать, как искать файлы, которые начинаются со слова «цифры». Я не уверен, нужно ли мне помещать все имена файлов в массив и повторять массив или что-то еще, это всего лишь лаборатория, которая не стоит много очков, они обычно довольно простые, но я m застрял.
Мой проект:
Задача № 2: Напишите программу, которая ищет в текущем каталоге файлы, соответствующие шаблону «numbers.XXXX». Для каждого файла откройте файл и прочитайте файл. Вы можете предположить, что файл будет содержать 100 целых чисел. Суммируйте целые числа. Выведите имя файла и сумму целых чисел. Подсказки: создайте функцию для работы с open / read / sum / print / close. opendir () требует начальный каталог. Вы хотите начать где в текущем каталоге. Вам нужно l oop над записями каталога. Это похоже на просмотр связанного списка. Вы хотите проверить каждую запись файла, чтобы увидеть, начинается ли она с «цифр».
Lab 7 part 2
*/
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
void open()
{
}
void read()
{
}
void sum()
{
}
void print()
{
}
void close()
{
}
int main()
{
int num, arraySum = 0;
FILE *fptr;
DIR *d;
struct dirent *dir;
d = opendir(".");
if (d)
{
while ((dir = readdir(d)) != NULL)
{
printf("%s\n", dir->d_name);
if(dir->d_name)
fptr = fopen(dir->d_name,"r");
while ((num = getw(fptr))!=EOF)
{
printf("%d, ",num); //printing numbers from file.
arraySum += num;
}
}
}
return 0;
}
первая часть проекта, где я создал файлы, начинающиеся со слова «цифры», используя sprintf и присваивая переменную имена в конце. https://pastebin.com/v44fALfp