Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.63
naa17
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 47
#1

Что значит "%d %d\n" в функции вывода в файл fprintf(f, "%d %d\n", i, j); - C++

26.05.2014, 21:02. Просмотров 1330. Ответов 5
Метки нет (Все метки)

Что значит "%d %d\n" в функции вывода в файл fprintf(f, "%d %d\n", i, j);

Запутался, объясните, пожалуйста!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2014, 21:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Что значит "%d %d\n" в функции вывода в файл fprintf(f, "%d %d\n", i, j); (C++):

В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно" - C++
В зависимости от времени года "весна", "лето", "осень", "зима" определить погоду "тепло", "жарко", "холодно", "очень холодно". Я так...

Аргументы функции: что значит "большие" и "небольшие" аргументы? - C++
Здравствуйте! Всем доброго дня! Растолкуйте пожалуйста! Что значит большие и небольшие?

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) - C++
Разработать программу с использованием наследования классов, реализующую классы: − воин; − пехотинец(винтовка); − матрос(кортик). ...

С++ консольное приложение win32, матерится на первое "pow" после "if", а на "system" говорит что неопределён. - C++
#define _CRT_SECURE_NO_WARNINGS #include "stdafx.h" #include <math.h> #include <iostream> #define Pi 3.1416 #include <clocale>...

Что Вы понимаете под "абстрактным типом", "абстракцией данных" и "абстрактными операциями"? - C++
А давайте займёмся археологией! И проследим как менялся смысл понятий "абстрактный тип данных", "абстракция данных" и "абстрактные...

Visual Studio не читает операторы, что начинаются на "glu" ("gluBuild2DMipmaps", "gluPerspective") - C++
Данный код должен выводить на экран кубик который должен вращаться, но возникла проблема. Для выполнения этого кода я подключи библиотеку...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
monolit
185 / 184 / 22
Регистрация: 24.03.2011
Сообщений: 667
Завершенные тесты: 1
26.05.2014, 21:07 #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
%d - целое число.
К примеру, если fprintf(f, "%d <> %d\n", 5, 6), то в файл f запишется строка "5 <> 6" и произойдет переход на новую строку ('\n'). Короче, проще погуглить справку по printf...
naa17
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 47
26.05.2014, 21:23  [ТС] #3
не могу понять что не так.. все перепробовал.. может поможете?

Хотел реализовать следующее:

Если вершина существует, то записываем её индекс и знак "-"

а потом, если она имеет в списке смежности другую вершину(ы) то записываем их.

Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
for (int i = 0; i < 100; i++)
    {
        if (!adj[i].e)
        {
            continue;
            fprintf(f,"\n%d - ", i);
        }
 
        for (int j = 1; j < 100; j++)
        {
            if (adj[i].exist(j))
                fprintf(f,"%d", j);
        }
    }
monolit
185 / 184 / 22
Регистрация: 24.03.2011
Сообщений: 667
Завершенные тесты: 1
26.05.2014, 21:30 #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
continue все-таки местами поменяй с fprintf. Всего-лишь надо было код посмотреть - очевидно же, что после continue ничего не выполнится в этой итерации.
naa17
0 / 0 / 0
Регистрация: 23.04.2014
Сообщений: 47
26.05.2014, 22:12  [ТС] #5
а вот теперь из файла..

почему-то тоже неправильно добавляет, подскажите?

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
void Graph::load(const char *s)
{
    FILE *f = fopen(s, "r");
 
    if (!f) {
        cout << "File doesn't exist\n";
        return;
    }
 
    int x, y, j;
 
    for (int i = 0; i < 100; i++)
    if (adj[i].e)
        adj[i].makenull();
 
    while (fscanf(f, "%d - %d%d\n", &j, &x, &y) == 3)
    {
        if (!adj[x].e)
            addvertex(x); //добавление вершины
        if (!adj[y].e)
            addvertex(y); //добавление вершины
        addedge(x, y); //добавление ребра
    }
 
    fclose(f);
}
monolit
185 / 184 / 22
Регистрация: 24.03.2011
Сообщений: 667
Завершенные тесты: 1
26.05.2014, 23:27 #6
Сдается мне, в файле все лежит не так, как вы предполагаете (судя по коду записи)... в while'е просто выводите в консоль, что там читаетсяв j, x, y, и должны разобраться, в чем причина.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2014, 23:27
Привет! Вот еще темы с ответами:

Что значит ":" после параметров функции - C++
CSimpleString::CSimpleString(const char* p) : len(0), buff(nullptr) Что значит len(0), buff(nullptr) и как это называется ?

Создать абстрактный класс "Издание" и производные классы "Книга", "Статья", "Электронный ресурс" - C++
1. Создать абстрактный класс Издание с методами, позволяющими вывести на экран информацию об издании, а также определить является ли данное...

Создать класс "Вентилятор" содержащий в себе классы: "Двигатель", "Контроллер", "Пульт управления" - C++
Помогите с кодом написания задачи, не понимаю как написать классы в классе. Нужно создать класс &quot;вентилятор&quot; содержащий в себе классы:...

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания" - C++
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько лет книге и количество дней прошедших...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
26.05.2014, 23:27
Ответ Создать тему
Опции темы

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