C语言,将元素分组到数组中

人气:176 发布:2022-10-16 标签: arrays c grouping elements

问题描述

我的代码太长、太复杂、太单调,我不能在这里发布它,但假设您有这样的代码:

    #include <stdio.h>

char myArray[3000]={3,1,3,1,2,5,1,1,7,0,1,3,0,1,2,0,1,6,0,1,8,9,1,0,0,1,4,3,1,7};

假设我想创建一个新数组,该数组从上面的元素列表中获取两个连续的数字。

myArray的索引2-6包含(3,1,2,5),如何让我的新数组将元素分组并将元素2-6存储为(31,25)。

我是编程新手,还没有找到有效的编程方法。

推荐答案

最简单的思考方式:

int newArray[2];
newArray[0] = myArray[2]*10 + myArray[3];
newArray[1] = myArray[4]*10 + myArray[5];

如果您想要更普通的东西...

#define NEW_ARRAY_SIZE 5
int newArray[NEW_ARRAY_SIZE];
int offset = 2;
int i = 0;
for ( i = 0; i < NEW_ARRAY_SIZE; ++i )
{
   newArray[i] = myArray[offset+2*i]*10 + myArray[offset+2*i+1];
}

211