21.06.2018, 22:43 [+3 UTC]
в нашей команде: 2 853 чел. | участники онлайн: 1 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.47 (16.04.2018)

Общие новости:
13.04.2018, 10:33

Форум:
18.06.2018, 08:55

Последний вопрос:
21.06.2018, 15:40

Последний ответ:
21.06.2018, 06:26

Последняя рассылка:
21.06.2018, 03:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
19.02.2010, 00:11 »
Тимофеев Дмитрий Валерьевич
Спасибо за ответ, данную материнскую плату я не рассматривал по причине большей цены( порядка 1200 рублей ) а также излишней функциональности. 2xPCI-E мне не нужны, а переплачивать лишние деньги за то чем не буду пользоваться не хочется. Кстати и в прайсе никса она на данный момент отсутствует.Отдельное спасибо за ссылку о тестировании винчестера. [вопрос № 176749, ответ № 259565]
13.12.2010, 12:57 »
Detsle
Спасиибо огромное))) оч помогли...нереально выручили! [вопрос № 181292, ответ № 264713]
16.01.2016, 21:22 »
galet06
Спасибо, узнала кое-что новое, из ГК РФ особенно. Меня удивляет, что все цитируют Постановление №745. А я высмотрела в ЗОЗПППравилах торговли кону о Защите прав потребителей, в котором четко сказано, что цена товара и полная стоимость являются обязательными в информации о товаре. [вопрос № 188646, ответ № 273232]

РАЗДЕЛ • С / С++

Создание программ на языках C и C++.

[администратор рассылки: Андрей Кузнецов aka Dr_Andrew (Старший модератор)]

Лучшие эксперты в этом разделе

CradleA
Статус: Профессор
Рейтинг: 147
solowey
Статус: Студент
Рейтинг: 88
Асмик Гаряка
Статус: Советник
Рейтинг: 34

Перейти к консультации №:
 

Консультация онлайн # 192354
Раздел: • С / С++
Автор вопроса: Александр Лепов (Посетитель)
Отправлена: 10.01.2018, 13:30
Поступило ответов: 1

Здравствуйте! Прошу помощи в следующем вопросе: Помогите пожалуйста найти ошибку в коде, в консоле у меня всё правильно выводит, а вот в текстовом файле нет.

Приложение:

Состояние: Консультация закрыта

Ответ # 276020 от Лысков Игорь Витальевич (Старший модератор)

Здравствуйте, Александр Лепов!
Я бы сделал так:

#include<math.h>
#include<conio.h>
#include<stdio.h>
//---------------------------------------------------------------------------

int main(int argc, char* argv[])
{
	int		i;
	int		a[100];
	int		min;
	int		min2, N;

	FILE *f1=fopen("m1.txt", "r");
	FILE *f2=fopen("m2.txt", "w");
	
	fscanf(f1,"%d",&N);

	for(i=0;i<N;i++)
		fscanf(f1,"%d",&a[i]);

	min=a[0];

	for(i=1; i<N; i++)
	{
		if (abs(a[i]) < abs(min))
			min = a[i];
	}
	min2 = a[0];
	for(i=1; i<N; i++)
	{
		if((abs(a[i]) > abs(min)) && (abs(a[i]) < abs(min2)))
			min2 = a[i];
	}
   
	fprintf(f2,"%d",min2);

	fclose(f1);
	fclose(f2);

	return 0;
}

Файл m1.txt
10 4 1 7 8 -3 11 -8 9 -2 5
Результат в файле m2.txt

Несколько замечаний:
1) Первым числом в файле идет количество чисел N. Которое потом везде и фигурирует (а не всегда 10)
2) Не проверяется переполнение массива a и наличие всех чисел в файле (я, на всякий случай, увеличил размерность массива до 100)
3) Ожидание нажатия на клавишу убрал. Результат - в файле.


Консультировал: Лысков Игорь Витальевич (Старший модератор)
Дата отправки: 10.01.2018, 16:31

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 192354

Хватов Сергей
Академик

ID: 20764

# 1

= общий = | 11.01.2018, 11:19 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер

Ещё настоятельно рекомендуется проверять, что fscanf возвращает ожидаемое значение. Если во входных данных мусор, он ничего не загрузит (и вдобавок недопустимый символ вернёт обратно, так что следующий fscanf на него же опять наткнётся), и значения переменных останутся неопределёнными.
Ещё крайне желательно, чтобы выходной файл, раз уж он символьный, заканчивался символами конца строки. На работоспособность это обычно не влияет, но при просмотре файла возможны проблемы. Возможно, что вы как раз на них и нарвались, потому как исходная программа формально верная.

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.14247 сек.

© 2001-2018, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.47 от 16.04.2018