преобразовать в одну строку типа char
int x[10] = {8, 1, 2, 3, 4, 5, 6, 7, 8, 9}; // массив a из 10 целых чисел
строка должна получится
8123456789 без запятых
Другие языки программирования и технологии
Как на Си, не с++ одномерный массив чисел
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x[10] = {8, 1, 2, 3, 4, 5, 6, 7, 8, 9};
char cX[11];
for(int i = 0; i < 10; ++i)
{
cX[i] = (char)x[i] + '0';
}
cX[10] = '\0';
printf("%s\n", cX);
return 0;
}
#include <stdlib.h>
int main()
{
int x[10] = {8, 1, 2, 3, 4, 5, 6, 7, 8, 9};
char cX[11];
for(int i = 0; i < 10; ++i)
{
cX[i] = (char)x[i] + '0';
}
cX[10] = '\0';
printf("%s\n", cX);
return 0;
}
цифр или чисел?
все почему-то отвечают для цифр
хотя судя по int, это именно числа. цифры влезли бы в unsigned char.
все почему-то отвечают для цифр
хотя судя по int, это именно числа. цифры влезли бы в unsigned char.
Андрей Ощепков
чисел
через двусвязный список, чтобы занести все элементы по цифрам справа массива, а потом вывести с другой стороны списка
https://rextester.com/IFKG42729
#include <stdio.h>
#include <stdlib.h>
struct List ;
struct List {
char data;
struct List * next;
struct List * prev;
};
int main(void)
{
struct List *list0 = malloc (sizeof (struct List));
list0->prev =0;
list0->next =0;
struct List *list = list0;
int x[10] = {8, 1, 2, 3, 4, 5, 6, 776, 8, 9};
int size=sizeof (x)/sizeof (x[0]);
for (int i = size - 1; i>=0; --i ) {
int number = x[i];
do
{
list->data = number % 10 + '0';
number /= 10;
struct List * next = malloc (sizeof (struct List));
next->prev = list;
list->next = next;
list = next;
list->next=0;
} while (number );
}
// вывод
do {
printf("%c ", list->data);
list = list->prev;
}
while (list -> prev);
printf("%c", list0->data); // самый последний элемент
return 1;
}
https://rextester.com/IFKG42729
#include <stdio.h>
#include <stdlib.h>
struct List ;
struct List {
char data;
struct List * next;
struct List * prev;
};
int main(void)
{
struct List *list0 = malloc (sizeof (struct List));
list0->prev =0;
list0->next =0;
struct List *list = list0;
int x[10] = {8, 1, 2, 3, 4, 5, 6, 776, 8, 9};
int size=sizeof (x)/sizeof (x[0]);
for (int i = size - 1; i>=0; --i ) {
int number = x[i];
do
{
list->data = number % 10 + '0';
number /= 10;
struct List * next = malloc (sizeof (struct List));
next->prev = list;
list->next = next;
list = next;
list->next=0;
} while (number );
}
// вывод
do {
printf("%c ", list->data);
list = list->prev;
}
while (list -> prev);
printf("%c", list0->data); // самый последний элемент
return 1;
}
нужно вспомнить про аски коды. код 48 соотв. символу "0", 49 - символу "1". если к элементу массива прибавить 48, то получим нужный символ.
ну а как написать думаю сам разберешься
ну а как написать думаю сам разберешься
Елдос Масенкулов
Зачем помнить про 48, когда можно прибавить '0'? (как в следующем ответе)
В Васике я бы создал строковую переменную и в цикле забил бы её значениями из массива.
Типа:
dim a as string =""
for i = 0 to x.lenght-1
a=a & x(i)
next
dim x1 as integer
x1=cInt(a) 'здесь возможны глюки если первыми цифрами будут ноли.
Типа:
dim a as string =""
for i = 0 to x.lenght-1
a=a & x(i)
next
dim x1 as integer
x1=cInt(a) 'здесь возможны глюки если первыми цифрами будут ноли.
Похожие вопросы
- Написать в С++. Задан одномерный массив А из 10 чисел.
- Заполнить случайным образом одномерный массив из n элементов и обменять местами последний и максимальный (в паскале)
- сформировать с помощью ДСЧ одномерный массив и вывести его на печать
- сформировать с помощью ДСЧ одномерный массив и вывести его на печать .
- СРОЧНО ПАСКАЛЬ задан одномерный массив с (1..10), дать ответ: каких элементов больше: положительных или отрицательных
- Задача pascal abc fr. Одномерный массив
- C++ одномерный массив
- как сформировать одномерный массив различных чисел в паскале?
- Как правильно задать одномерный массив в C++?
- Дан линейный массив чисел N. N вводит пользователь. Вывести все простые числа массива.
Errorexpected expression before 'char'