Перевод массива чисел в строку - C (СИ)

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

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

Помогите разобраться, почему не получается перевод из массива чисел в строку
char shfrtx[1000];
for(i=0; i<num; i++) {
    //shfrtx[i] = (char)(rrr[i]);
    sprintf(shfrtx, "%d",rrr[i]); << вот так делаю
}
уже как только не писала, но строку потом просто не выводит, вернее выводит, но только одну единичку и все сам массив чисел состоит из циферок 1 и 0
боже) какой позор) я поняла, что в строку записался только последний элемент =) как правильно нужно записать, чтобы все элементы записались? =)

Решение задачи: «Перевод массива чисел в строку»

textual
Листинг программы
char *word;
word=new char[i+2];
 
for (int j=i; Num>0; j--)
        {
        k=fmod(Num,d);
        sprintf(&word[j], "%i", k);
        Num/=d;
        }
 
Edit3->Text=word;

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

В этом коде:

  1. Создается указатель на строку word и выделяется память для i+2 символов.
  2. Происходит цикл, который начинается с i и продолжается, пока Num больше нуля.
  3. Внутри цикла происходит следующее:
    • k вычисляется как остаток от деления Num на d.
    • С помощью функции sprintf в word[j] записывается строка, представляющая значение k.
    • Num делится на d.
  4. После завершения цикла, строка word передается в Edit3->Text. Код, возможно, используется для перевода массива целых чисел в строку. i и d могут быть определены вне этого фрагмента кода.

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


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

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

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