Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/18: Рейтинг темы: голосов - 18, средняя оценка - 4.94
23 / 23 / 19
Регистрация: 01.11.2015
Сообщений: 128
1

Инициализация строки

05.11.2015, 23:01. Показов 3616. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет! Не могу понять, где ошибка( Если я ввожу два символа, например XX, то он выводит значение только первого.. т.е. только 10.. Очень нужна ваша помощь))

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <string.h>
int main()
{
    int a, b, c=0, i;
    char rim[] = "";
    printf("Input rimskoe 4islo': "); 
    gets(rim);
    for (i=0; i < strlen(rim); i++)
        {
            if (rim[i]=='I') c=c+1;
            if (rim[i]=='V') c=c+5;
            if (rim[i]=='X') c=c+10;
            if (rim[i]=='L') c=c+50;
            if (rim[i]=='M') c=c+1000;
            if (rim[i]=='C') c=c+100;
            if (rim[i]=='D') c=c+500;
        }
    printf("%d", c);
    getch();
    return 0;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.11.2015, 23:01
Ответы с готовыми решениями:

Безопасная инициализация строки
Здравствуйте. Я разработчик игры на С. В данный момент пишу античит для неё. При обнаружении чита...

Подскажите, в чем ошибка? Инициализация строки
Код: #include &lt;stdio.h&gt; #include &lt;string.h&gt; #include &lt;stdlib.h&gt; typedef struct person{ ...

Инициализация структуры
Есть такой код: typedef struct Point3DStruct { int x; int y; int z; } Point3D; ...

Инициализация переменной
Привет, как сделать чтобы переменной присваивалось значение если я ничего не ввел и нажал Enter...

1
15 / 15 / 11
Регистрация: 25.04.2014
Сообщений: 39
05.11.2015, 23:08 2
char rim[] = "";
Строка инициализируется с нулевой длинной и вы выходите за пределы выделенной памяти.

Кстати, gets небезопасная функция и лучше использовать fgets, т.к. если вы забудете в строке поставить символ конца 0, то функция пойдет гулять по памяти.
1
05.11.2015, 23:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.11.2015, 23:08
Помогаю со студенческими работами здесь

Инициализация массива
На форуме прочитал тему, что если массив объявить как глобальную переменную, она инициализируется...

Инициализация полей в структуре
#include &lt;iostream&gt; #include &lt;string.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include...

Инициализация массива структур
Создал массив структур. По задумке, хочу чтобы это массив получал свои значения в функции. Не могу...

инициализация char (уточнение )
товарищи, как я понимаю, такая инициализация в Си не верна: char *pChar = &quot;dsfdsfdsf&quot; коли...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru