这必须在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];
}
}
}
谢谢
顺序很重要。 谢谢。
答案 0 :(得分:1)
此代码应能解决问题:
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];