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

Ошибка

24.04.2017, 15:45. Просмотров 744. Ответов 5
Метки нет (Все метки)

Bash
1
2
3
4
5
6
7
8
9
10
list.c: In function ‘listRemove’:
list.c:116:2: warning: format ‘%g’ expects argument of type ‘double’, but argument 2 has type ‘LIST_TYPE’ [-Wformat=]
  printf("Элемент z=%g%+gi удален из списка\n", list->_arr[cur]._data);//
  ^
list.c:116:2: warning: format ‘%g’ expects a matching ‘double’ argument [-Wformat=]
list.c: In function ‘listPrint’:
list.c:147:3: warning: format ‘%g’ expects argument of type ‘double’, but argument 2 has type ‘LIST_TYPE’ [-Wformat=]
   printf("%g%+gi ", list->_arr[cur]._data);
   ^
list.c:147:3: warning: format ‘%g’ expects a matching ‘double’ argument [-Wformat=]
Но
C
1
typedef double complex LIST_TYPE;
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
void listRemove(List *list, const int index)
{
    int prev, cur;
 
    if (listEmpty(list))
    {
        printf("Список пуст\n");
 
        return;
    }
    else if (index < 0 || index >= list->_size)
    {
        printf("Ошибка. Позиция не найдена\n");
 
        return;
    }
 
    if (index == 0)
    {
        cur = list->_first;
        list->_first = list->_arr[list->_first]._next;
    }
    else
    {
        prev = findPrev(list, index);
        cur = list->_arr[prev]._next;
        list->_arr[prev]._next = list->_arr[cur]._next;
    }
 
    printf("Элемент z=%g%+gi удален из списка\n", list->_arr[cur]._data);//
 
    list->_arr[cur]._data = ' ';
    list->_arr[cur]._next = list->_hole;
    list->_hole = cur;
    list->_size--;
}
и
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
void listPrint(const List *list)
{
    int i, cur = list->_first;
 
    if (listEmpty(list))
    {
        printf("Список пуст\n");
 
        return;
    }
    
    for (i = 0; i < list->_size; i++)
    {
        printf("%g%+gi ", list->_arr[cur]._data);
 
        cur = list->_arr[cur]._next;
    }
 
    printf("\n");
}
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.04.2017, 15:45
Ответы с готовыми решениями:

IIS- asp ошибка: HTTP 500.100 - Внутренняя ошибка сервера - ошибка ASP Internet Information Services
Привет! Конфигурация win2000pro sp2, стандартный IIS, IE 5. При попытке...

Ошибка при чтении изменений при обмене РИБ: Ошибка при вызове метода контекста (ПрочитатьИзменения): Ошибка записи!
Доброго всем времени суток! подскажи пожалуйста как исправить ошибку: Ошибка...

Ошибка при добавлении в файл. Ошибка 101: Ошибка записи на диск (Error 101: Disk write error).
Здравствуйте, возникла проблема такого плана. Нужно произвести добавление...

Загружается до окна приветствия и вылетает ошибка: isass.exe - Системная ошибка
Ребята, помогите кто может... весь день бьюсь безрезультатно... с утра пришёл...

Ошибка HTTP 500 - внутреняя ошибка сервера при отправке почты.
Я пытаюсь отправить почту и присоединяю к ней письма Вот часть страницы Dim...

5
Лысый шмель
Заблокирован
24.04.2017, 16:15 2
Цитата Сообщение от Timas Посмотреть сообщение
typedef double complex LIST_TYPE;
Зачем здесь слово complex?
Цитата Сообщение от Timas Посмотреть сообщение
=%g%
Зачем второй знак процента после g?
1
Timas
0 / 0 / 1
Регистрация: 22.11.2014
Сообщений: 153
24.04.2017, 16:33  [ТС] 3
Лысый шмель, брал за основу Complex.h, вывод комплексных чисел
C
1
2
3
4
5
6
7
8
int main()
{
    double complex z;
    double re, im;
    scanf("%lf%lf", &re, &im);
    z = re + im*I;
    printf("z = %g%+gi\n", creal(z), cimag(z));
}
0
Лысый шмель
Заблокирован
24.04.2017, 16:35 4
Лучший ответ Сообщение было отмечено Timas как решение

Решение

Цитата Сообщение от Timas Посмотреть сообщение
брал за основу
Чудно. А куда ты дел из основы вызов creal и cimag?
1
Timas
0 / 0 / 1
Регистрация: 22.11.2014
Сообщений: 153
24.04.2017, 17:13  [ТС] 5
Лысый шмель, То есть нужно так?
C
1
 printf("%g%+gi ",creal(value), cimag(value),  list->_arr[cur]._data);
Разобрался
Добавлено через 31 минуту
C
1
printf("%g%+gi ", creal(list->_arr[cur]._data), cimag(list->_arr[cur]._data));
0
Лысый шмель
Заблокирован
24.04.2017, 17:20 6
Timas,
0
24.04.2017, 17:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.04.2017, 17:20

Django Ошибка доступа (403) Ошибка проверки CSRF. Запрос отклонён
На хостинге разместил сайт и не могу войти в админку, т.к. возникает 403 ошибка...

Ошибка SQL запроса , в базе работает, а через IBQuery в Delphi ошибка
В Combobox загружены имена организаций. Нужно выполнить запрос на вывод всех...

Ошибка разбора XML/ Ошибка при вызове метода контекста (Прочитать)
1C 8.2 Документооборот КОРП 1.2 Текст ошибки...


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

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

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