Преобразование типов вручную - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Необходимо написать функцию преобразования строки цифр в число. Читал на сайтах, вычитал способ: "Приведем примеры явного преобразования. int i; Можно привести следующие примеры явных преобразований типов: (char) i - преобразует значение типа int в значение типа char." Я написал:
void CharConvertInt(char str[])
{
    int i;
    for(i=0;i<StrLen(str);i++)
        (int) str[i];
}
Но это совсем не работает. Как можно?
Не, тут все неправильно) Надо по-другому, но тоже не получается.
int CharConvertInt(char str[])
{
    int i,Chislo;
    for(i=0;i<StrLen(str);i++)
        Chislo=(int)str[i];
    return Chislo;
}
Если ввести одну цифру.

Решение задачи: «Преобразование типов вручную»

textual
Листинг программы
int CharConvertInt(char str[])
{
  int i,Chislo;
 
  Chislo = 0;
  for(i=0;i<StrLen(str);i++)
    Chislo = Chislo*10 + (str[i]-'0');
 
 return Chislo;
}

Объяснение кода листинга программы

  1. В функции CharConvertInt происходит преобразование строки чисел в целое число.
  2. Переменная Chislo инициализируется значением 0 и используется для хранения результата преобразования.
  3. В цикле for перебираются символы строки str.
  4. Внутри цикла значение Chislo увеличивается на произведение 10 и разности между текущим символом и символом '0' (для получения числового значения символа).
  5. После завершения цикла возвращается значение переменной Chislo.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.6 из 5
Похожие ответы