如何在数组中找到与整数和数字之间的两个最接近的差

尤沙·博赫拉

我的代码的目标是在数组中的数字和整数之间获得两个最接近的差。这是我的代码。

#include <stdio.h>
int main()
{
int kilometre, exit_gas[7]={90,95,116,150,300,377,677},i,distance;
distance=(kilometre-exit_gas[0]);
printf("Enter your kilometre reading:");
scanf("%d",&kilometre);
for(j=1;j<8;++j){
    if(abs(kilometre-exit_gas[j])<distance){
        distance=abs(kilometre-exit_gas[j]);
        printf("%d\n",distance);
    }
}
return 0;
}

我的代码存在的问题是,它发现数组中的所有数字与整数(kilometre)之间存在差异。例如,如果千米为299,则上述代码的输出为:

204
183
149
1

所需的输出应为:

149
1

我知道我得到了帮助,204 183因为他们也满足了限制条件,if(abs(kilometre-exit_gas[j])<distance)那么我应该如何修改限制条件以获得所需的结果?

来自莫斯科的弗拉德

我不知道您如何获得显示在帖子中的结果,因为我得到了另一个结果。不过,该程序可以按照以下方式进行查找。

#include <stdio.h>
#include <stdlib.h>

int main(void) 
{
    int exit_gas[] = { 90, 95, 116, 150, 300, 377, 677 };
    const size_t N = sizeof( exit_gas ) / sizeof( *exit_gas );
    size_t i;
    int kilometre;
    unsigned int first, second;

    printf( "Enter your kilometre reading: " );
    scanf( "%d", &kilometre );

    for ( i = 0; i < N; i++ )
    {
        unsigned int distance = abs( kilometre - exit_gas[i] );
        if ( i == 0 || distance < first )
        {
            if ( i != 0 ) second = first;
            first = distance;
        }
        else if ( i == 1 || distance < second )
        {
            second = distance;
        }
    }

    printf( "%u\n", first );
    printf( "%u\n", second );

    return 0;
}

我程序的输出是

1
78

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Javascript在数组中找到最接近的数字而不会继续下去

Python:如何在两个单独的数组之间找到两个相等/最接近的值?

如何在R中的向量中找到一个值与其最接近的值之间的差?

如何在Matlab的单元格数组中找到两个零之间的非零数字

如何在Spark中找到两个DataFrame的最接近值

在多维数组中找到两个相关数字的最接近组合

如何在Python中找到两个一维数组之间的马氏距离?

如何在Python中找到两个日期时间对象之间的毫秒差?

如何在Java中找到最接近给定数字

在数组中找到最接近的点

如何在数组中找到两个相似数字的索引?

如何在Python中找到没有重复的两个数组中最接近的元素,并在Python中返回两个数组的索引?

如何在各列中找到最接近的数字?

如何找到两个矩形之间最接近的距离的两个点?

如何在JS中找到两个相同数组之间的差异?

如何在React中找到两个嵌套数组之间的不匹配元素

如何从谁的值最接近零的列表中找到两个索引

JavaScript在数组中找到最接近的数字而无需结束

在数字列中找到两个单元格之间的特定增加

如何在java中找到最接近零的五个输入数字

如何在3维数组中找到最接近的数组

如何在 Python 中找到最接近数字的值?

如何在Java中找到两个给定整数之间的数字之和

如何在数组角度 6 中找到最接近的较低值?

c# 在具有两列到两个数字参数的列表中找到最接近的两个数字

在数组中找到最接近零的数字

如何在pinescript数组中找到最接近的值?

如何在关联数组中找到最接近数字的值?

如何在使用 2 个标识符时找到数组中最接近的数字?