注册 登录
编程论坛 C++教室

求助帖:关于查值得程序

ysh198877 发布于 2013-09-25 17:13, 484 次点击
说明:现在我有两组数一组x,一组y。我希望输入X值就的到y的值,这个程序该怎么写,本人刚学,求指点!!
6 回复
#2
yuccn2013-09-25 17:25
你的意思是 把x里面的数字作为key,对应找对应的 数字对吧

#define SIZE 10
int g_x[SIZE] = {1,2,3,4,5,6,7,8,9,0};
int g_y[SIZE]=  {100,200,300,400,500,600,700,800,900,0};

int *get_y(int x)
{
    for(int i = 0; i < SIZE; i++)
    {
        if (g_x[i] == x)
        {
            return &g_y[i];
        }
    }
    return NULL;
}
#3
3037709572013-09-25 17:58
貌似是这样的。
#4
未未来2013-09-25 18:59
两数组的数的对应关系咋样的呢,
#5
ysh1988772013-09-25 19:53
回复 2楼 yuccn
感谢,膜拜中!
#6
ysh1988772013-09-25 20:52
回复 2楼 yuccn
程序中int* 和&这两个符号有什么深意?我去掉以后得到正确结果,不去掉得到的貌似是地址
#7
rjsp2013-09-26 08:38
如果不要求中途增删,建议用 std::vector< std::pair<x类型,y类型> >,排序,以后用 std::lower_bound 进行二分查找
如果要求中途增删,建议用 std::map
1