在 dev-c++ 中将数组放在一起

Posted

技术标签:

【中文标题】在 dev-c++ 中将数组放在一起【英文标题】:Put together arrays in dev-c++ 【发布时间】:2019-05-04 20:05:04 【问题描述】:

我有一个作业,要求计算几天内收集了多少种不同的蘑菇,一个月几次,并按天数升序排列

含义:

11 - 多少行(对于 for 函数)

第一个数字 - 采蘑菇的天数

其他三个数字 - 不同类型的蘑菇(BRL

数据示例:

11

2 8 4 0

3 1 0 9

1 2 3 4

5 4 14 2

2 4 4 4

3 0 0 0

15 25 45 13

28 13 13 13

16 2 0 2

16 5 15 25

3 4 44 444

*重复天数表示当天采蘑菇数次

我已经把它们按顺序排列了,但是不能合并数组(蘑菇)

*(n) 代表数字 11

void count (int D[], int B[], int R[], int L[], int n)
    for ( int i=0; i<n;i++)
        for ( int j=i+1; j<n;j++)
            if ( D[i]==D[j]  && B[i] > B[j] && R[i] > R[j] && L[i] > L[j] ) 
                ; B[i]+=B[j];R[i]+=R[j];L[i]+=L[j];
             
            if ( D[i] > D[j] )
            swap(D[i],D[j]);swap(B[i],B[j]);swap(R[i],R[j]);swap(L[i],L[j]);  
             
            
        
    

拥有要得到什么:

1 2 3 4

2 12 8 4

3 5 44 453

5 4 14 2

15 25 45 13

16 7 15 27

28 13 13 13

得到了什么

1 2 3 4

2 8 4 0

2 4 4 4

3 1 0 9

3 0 0 0

3 4 44 444

5 4 14 2

15 25 45 13

16 7 15 27

16 2 0 2

28 13 13 13

【问题讨论】:

【参考方案1】:

嗯。我知道您有代表天数和蘑菇类型的数组。

我有一些步骤可以帮助你做出一些想法:

1) 使用结构体来表示记录,以减少数组的数量。

2) 实现一个函数,该函数通过它的 day 属性对该结构的数组进行排序。

3) 实现一个函数,该函数接受一个排序数组 (A1)(按上述函数排序),并在其中声明该结构的数组并在 A1 上循环并将其值分配到另一个数组中,如果 A1[i -1].day !=A1[i].day 如果你发现重复只是更新它的最后一个值,然后你循环返回函数中声明的数组。

希望这些步骤能给你一个提示。

【讨论】:

以上是关于在 dev-c++ 中将数组放在一起的主要内容,如果未能解决你的问题,请参考以下文章

在感知器学习模型的 Python 实现中将数组传递给 numpy.dot()

在 Google Big Query 中将两个数组连接在一起

如何在 Python 中将一个数组中的多列堆叠在一起?

在 C++ 中将 memset 与多维数组一起使用

在 C 中将 strcpy 与字符串数组一起使用

Java中将数组的length计算放在循环体外面可以提升运行速度