Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14

Неправильная работа функции времени

23.05.2014, 21:02. Показов 1028. Ответов 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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
#define CLOCKS_PER_SEC 1000
int BitStrFind(char *str, int eol, int bitVal, int **nbyte, int **nbit)
 
 
{
    int *i = malloc(sizeof(int));
    int *j = malloc(sizeof(int));
 
    if(bitVal != 0 && bitVal != 1)
        return 0;
 
    for(*i = 0; *i < strlen(str); ++(*i))
    {
        if(str[*i] == eol)
            return 0;
 
        for(*j = 0; *j < 8; ++(*j))
        {
            if((str[*i] & (1 << (*j))) && bitVal ||
                !(str[*i] & (1 << (*j))) && !bitVal)
            {
                *nbyte = i;
                *nbit = j;
                return 1;
            }
        }
    }
 
    return 0;
}
 
int continueQuery()
{
    int ans;
    char tmp[100];
    puts("Prodolzit? 0 - no, 1 - yes");
    scanf("%d", &ans);
    gets(tmp);
    if(!ans || ans == 1)
        return ans;
    return continueQuery();
}
 
int main()
{
    int eol;
    int *nbyte, *nbit;
    int res;
    char str[100];
    int bitVal;
    int i, j;
    clock_t totalStartTime;
 
    totalStartTime = clock();
 
    for(;;)
    {
        puts("Vvedite stroku : ");
        gets(str);
 
        if(!strlen(str))
        {
            if(continueQuery())
                continue;
            else break;
        }
 
        puts("Vvedite eol (thislo iz tablicy ASCII): ");
        scanf("%d", &eol);
        puts("vvedite bitVal : ");
        scanf("%d", &bitVal);
 
        res = BitStrFind(str, eol, bitVal, &nbyte, &nbit);
 
        if(!res)
            puts("solution not found");
        else
            printf("nbyte = %d\tnbit = %d\n", *nbyte, *nbit);
 
        if(!continueQuery())
            break;
    }
 
    free(nbyte);
    free(nbit);
 
    printf("-----------------------\ntotal time = %.7f sec\n", (clock() - totalStartTime) * 1. / CLOCKS_PER_SEC);
    getch();
    return 0;
}
Добавлено через 14 минут
Если вдруг не компилится попробуйте убрать строчку #define CLOCKS_PER_SEC 1000
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.05.2014, 21:02
Ответы с готовыми решениями:

Неправильная работа функции "printf"
#include &lt;stdio.h&gt; int main() { int m = 7; FILE *mnt; mnt = fopen(&quot;string in file.txt&quot;, &quot;r&quot;); int ii; fread(ii, 1, m,...

Неправильная работа if
Привет! Задали по лабараторки сделать программу, обрабатывающию 2 уровнения. Задание: y=f1 если C, в противном случае y=f2 (сами функции...

Неправильная работа putchar()
Доброго дня суток. бида пришла из ниоткуда: в простом, вроде бы, задании, функция putchar() никак не хочет выводить вводимый символ,...

5
153 / 148 / 66
Регистрация: 20.02.2014
Сообщений: 556
23.05.2014, 21:50
Цитата Сообщение от bgt11 Посмотреть сообщение
total time = %.7f sec\n"
Может на %.7lf попробуй, так то вроде все верно написано.
0
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14
23.05.2014, 21:56  [ТС]
К сожалению нет время выводит в десятых секундах
0
153 / 148 / 66
Регистрация: 20.02.2014
Сообщений: 556
23.05.2014, 22:11
Цитата Сообщение от bgt11 Посмотреть сообщение
десятых секундах
Так проблема в том, что быстро отрабатывает программа?
0
0 / 0 / 0
Регистрация: 24.12.2013
Сообщений: 14
23.05.2014, 22:49  [ТС]
нет понимаете в чем проблема я запускаю данную программу в компиляторе TurboC 2.0...и там время работает не корректно...но если убрать строку #define CLOCKS_PER_SEC 1000 и запустить программу с компилятора c-standart or c-free то программа совершенно корректно считает время...и данная вещь мне непонятна)

Добавлено через 38 секунд
а чтобы программа работала корректно нужно установить #define CLOCKS_PER_SEC 17 или где то коло того в компиляторе TurboC 2.0
0
153 / 148 / 66
Регистрация: 20.02.2014
Сообщений: 556
24.05.2014, 00:01
Цитата Сообщение от bgt11 Посмотреть сообщение
#define CLOCKS_PER_SEC 1000
Зачем вы вообще свою определяете, эта макроконстанта и так определена в time.h
Цитата Сообщение от bgt11 Посмотреть сообщение
данная вещь мне непонятна
Вам не понятно то, что в разных компиляторах по разному реализована стандартная библиотека? Так для этого и определяются макроконстанты, что бы на разных компиляторах работало одинаково в не зависимости от реализации. И если вы не будете переопределять CLOCKS_PER_SEC, мне кажется, что все у вас хорошо заработает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.05.2014, 00:01
Помогаю со студенческими работами здесь

Неправильная работа программы
Написал код. Компилируется. Проблема в своенравном поведении программы. Нужная логика Push enter если &quot;out&quot; ...

Неправильная работа с указателями на массивы
ДД! Написал такой вот код, компилится нормально, но при выводе результатов в консоль видно, что в первых элементах просто нули, хотя...

Неправильная работа getch() в switch
Добрый день! Пишу &quot;Морской бой&quot; на Си. Столкнулся с проблемой, связанной с функцией getch(). Привожу код одной из функций: void...

Обнуление переменных (неправильная работа приложения)
Добрый день, подскажите, почему такое может получаться (компилятор VS2013 pro). Данное приложение зацикливается само в себя и при каждом...

Html_minify() - неправильная работа функции
Всем привет, у меня на сайте есть такая функция: function html_minify($html){ $search = array( '/\&gt;+/s', ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru