对数组中的负元素进行排序

时间:2018-09-20 15:31:06

标签: c arrays negative-number

这是我作为C语言编写的代码的一部分。 我想做的是检测数组中的负数,并用这些负数填充另一个数组。同时,我想计算这些负数。

所有这些听起来都很简单,并且一切似乎都可以解决,直到我尝试打印负数元素。这是我得到的: 6422204数字为负。

我根本无法弄清楚哪里出了问题,即使这是解决问题的好方法。

代码如下:

double arr[10] = {21, -3.4, 65, 7.6, -12, 66, 10, -2, 5, 135};

int length = sizeof(arr)/sizeof(double);
printf("There are %d numbers in the array.\n",length);

for(int i = 0; i < 10; i++)
{
    printf("[%d]=%.1lf ", i, arr[i]);
}

int neg = 0;
double negative[10];

for(int j = 0; j < 10; j++)
{
    if(arr[j] < 0)
    {
        negative[j] = arr[j];
        neg++;
    }
}

printf("\n\n%d numbers are negative.", &neg);

感谢您的回答!

1 个答案:

答案 0 :(得分:1)

删除&中的printf

printf("\n\n%d numbers are negative.", neg);