Повторите каждый элемент в массиве "я" раз в C - PullRequest
0 голосов
/ 01 октября 2018

Это должно быть сделано в C. Я ищу способ взять массив с такими элементами, как:

a = {1,2,3}

и дать такую ​​переменную, как i, если i = 3, каждыйЭлемент скопирован в новый массив, который я раз так:

b = {1,1,1,2,2,2,3,3,3,}

это то, что я до сих пор:

for(i = 0; i < size_S-inter_seq; i++) //size of new array - times copied
{
  for(j = 0; j < size_X; j++)  //size of old array
  {
    for(k = 0; k < inter_seq; k++) //times to be copied
    {
      b[i+k] = a[j];
    }
  }
}

спасибо

Порядок имеет значение.Спасибо.

1 Ответ

0 голосов
/ 01 октября 2018

Этот код должен сделать трюк:

int a[] = {1,2,3};
int i = 3;
int len = (sizeof a)/(sizeof a[0]);
int b[i*len];
for(int k=0; k<len; k++)
    for(int j=0; j<i; j++)  
        b[k*i + j] = a[k];
...