На Си Дан текстовый файл, содержащий целые числа. Переписать в новый текстовый файл только те числа, которые принадлежат заданному интервалу [a, b]. Подсчитать общее количество таких чисел и добавить эту информацию в конец полу...
На Си
Дан текстовый файл, содержащий целые числа. Переписать в новый текстовый файл только те числа, которые принадлежат заданному интервалу [a, b]. Подсчитать общее количество таких чисел и добавить эту информацию в конец полученного файла.
Ответ(ы) на вопрос:
#include
main()
{
int x;
int n=0;
int a=20;
int b=50;
FILE *fin, *fout;
fin = fopen( "input.dat", "r" );
fout = fopen( "output.dat", "w" );
while (fscanf(fin, "%d", &x) == 1) {
if ((x >= a)&&(x <= b)) {
fprintf ( fout, "%d\n", x );
n++;
}
}
fprintf ( fout, "%d\n", n);
fclose ( fout );
fclose ( fin );}
Пример:
Файл input.dat
58
43
12
97
21
65
34
72
53
Файл output.dat:
43
21
34
3
Не нашли ответ?
Похожие вопросы