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

strcmp не работает! - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ deck, stack, queue http://www.cyberforum.ru/cpp-beginners/thread375144.html
Здраствуйте,проблема такова, написал программу в которой реализованы дек, стек и очередь, когда в меню выбираю дек, стек или очередь открываеться новое меню для каждой из программы и в этих меню...
C++ Найти в массиве максимальный и минимальный элементы и поменять их местами Помогите разобраться Дан массив целых чисел. Найти в нем максимальный и минимальный элементы и поменять их местами. Задать размерность массива и организовать ввод массива с клавиатуры. Реализовать... http://www.cyberforum.ru/cpp-beginners/thread375133.html
Наследование, подскажите что не так C++
Решил разобраться с наследованием, настрочил простенький такой код .. работать не хочет Подскажите что не так #include "stdafx.h" using namespace std; #include "iostream" class baza{
Распечатать слова через запятую, заключив печатную строку в скобки C++
В двумерном массиве записаны слова, представляющие собой последовательность цифр, завершающихся 0. Необходимо распечатать слова через запятую, заключив печатную строку в скобки. Длина печатной строки...
C++ Нужен код программы для кодировки методом ХафФмана http://www.cyberforum.ru/cpp-beginners/thread375102.html
Немного теории: Дерево кодирования Хаффмена (Н-дерево) - двоичное дерево, у которого каждый узел имеет вес, и вес родителя равен суммарному весу его детей. Классический алгоритм Хаффмена на входе...
C++ Помогите студенту завтра в 1 час Мне нужна помощ по легким задачам с++ оплата следует если кто заинтересован пишите скайп soslan15rus1 подробнее

Показать сообщение отдельно
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
31.10.2011, 23:51
CEBEP, BRcr
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
#include <stdio.h>
 
int isinrange(char *s);
 
int main()
{
    char s[] = "9e99999999999999999999999999999999999999999999999999999";
 
    printf("%d\n", isinrange(s));
    printf("%d\n", isinrange("+2147483646"));
    return 0;
}
 
#include <stdlib.h>
#include <string.h>
#include <limits.h>
 
int count_digits(int);
 
int isinrange(char *s)
{
    char *min, *max, *p;
    int len_of_min = count_digits(INT_MIN);
    int len_of_max = count_digits(INT_MAX);
    int res;
    
    if (!(min = (char *) malloc(len_of_min + 2))
        || !(max = (char *) malloc(len_of_max + 1)))
        return 0;
    sprintf(min, "%d", INT_MIN);
    sprintf(max, "%d", INT_MAX);
    p = max;
    while (*s == ' ' || *s == '\t')
        s++;
    if (*s == '-')
        p = min;
    else if (*s == '+')
        s++;
    if (strlen(s) < strlen(p)) 
        res = 1;
    else if (strlen(s) > strlen(p))
        res = 0;
    else
        res = (((res = strcmp(s, p)) <= 0) ? 1 : 0);
    free(min);
    free(max);
    return res;
}
 
int count_digits(int n)
{
    int cnt = 0;
 
    do {
        cnt++;
    } while (n /= 10);
    return cnt;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru