Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
skyd
0 / 0 / 0
Регистрация: 19.06.2016
Сообщений: 7
1

Ошибка вывода в файл

28.06.2016, 19:08. Просмотров 308. Ответов 1
Метки нет (Все метки)

Дан текст, имеющий вид: « d1 - d2 + d3 - …», где di – цифры (n > 1). Вычислить записанную в тексте алгебраическую сумму.
Открываю один файл, считываю, вывожу на экран, нахожу сумму, а вот вывести результат суммы в другой файл не получается. Выводит не число, а знак квадрата. Помогите, пожалуйсста.
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#include < stdio.h >  
#include <iostream>
using namespace std;
int main()
{
    FILE *f;
    char str[50], sign = '+';
    char *estr;
    f = fopen("file3.txt", "r");
    estr = fgets(str, sizeof(str), f);
    int sum = 0, k1 = 0;
    int i = 0;
    while (str[i] != '\0')
    {
        if (str[i] == '+' || str[i] == '-' || str[i] == '.')
        {
            if (sign == '+') sum = sum + k1;
            if (sign == '-') sum = sum - k1;
            sign = str[i];
            k1 = 0;
        }
        if (str[i] >= '0' && str[i] <= '9')
            k1 = k1 * 10 + (str[i] - '0');
        if (str[i] == '.') break;
        printf("%c", str[i]);
        i++;
    }
    printf(" = %d\n", sum);
    fclose(f);
    FILE*g;
    g = fopen("file4.txt", "w");
    fwrite(&sum, sizeof(int), 1, g);
    fclose(g);
    system("pause");
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.06.2016, 19:08
Ответы с готовыми решениями:

Ошибка вывода в файл
Компилируется, но в файл не выводит #include &quot;iostream&quot; #include &quot;stdlib.h&quot; #include &quot;fstream&quot;...

Ошибка в функциях вывода данных в файл
Программа вводит записи, состоящие из 3 полей в 2 разных файла по выбору. Но в чём-то ошибка в...

Ошибка вывода
Почему выводит мусор?

Односвязный список, ошибка вывода
не пойму почему не работает вывод? пишет ошибку,якобы я залезаю в недопустимую часть памяти,...

Printf ошибка вывода long double (dev c++)
ос win10х64 компилятор dev c++ (5.11) #include &lt;stdio.h&gt; int main(void) { float a...

1
IVAN1234
45 / 45 / 40
Регистрация: 31.08.2015
Сообщений: 147
28.06.2016, 19:15 2
fprintf()
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2016, 19:15

Какой вариант функции блочного вывода НЕ СООТВЕТСТВУЕТ записи всего массива данных в двоичный файл
Помогите, пожалуйста: Какой вариант функции блочного вывода НЕ СООТВЕТСТВУЕТ записи всего массива...

Если ввести фразу короче девяти символов после вывода результата выскакивает ошибка
Доброго времени суток. Пытаюсь написать код, который разбивает фразы на отдельные слова с помощью...

Запись в файл.Ошибка
Прошу помочь решить ошибку #include &lt;sys/sysinfo.h&gt; #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru