Перевод массива чисел в строку - C (СИ)
Формулировка задачи:
Помогите разобраться, почему не получается перевод из массива чисел в строку
уже как только не писала, но строку потом просто не выводит, вернее выводит, но только одну единичку и все
сам массив чисел состоит из циферок 1 и 0
char shfrtx[1000]; for(i=0; i<num; i++) { //shfrtx[i] = (char)(rrr[i]); sprintf(shfrtx, "%d",rrr[i]); << вот так делаю }
боже) какой позор)
я поняла, что в строку записался только последний элемент =)
как правильно нужно записать, чтобы все элементы записались? =)
Решение задачи: «Перевод массива чисел в строку»
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;
Объяснение кода листинга программы
В этом коде:
- Создается указатель на строку
word
и выделяется память дляi+2
символов. - Происходит цикл, который начинается с
i
и продолжается, покаNum
больше нуля. - Внутри цикла происходит следующее:
k
вычисляется как остаток от деленияNum
наd
.- С помощью функции
sprintf
вword[j]
записывается строка, представляющая значениеk
. Num
делится наd
.
- После завершения цикла, строка
word
передается вEdit3->Text
. Код, возможно, используется для перевода массива целых чисел в строку.i
иd
могут быть определены вне этого фрагмента кода.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д