回 帖 发 新 帖 刷新版面

主题:问题已解决,请版主删帖。

最近在忙课程设计。题目是航空系统问题。对于其中最后一部分:退票部分的程序设计有问题。希望达人指点。
    我需要一个程序实现以下功能:
    两个[color=800000]数[/color]组:
    C1[]={A[1],A[2],.....}
    C2[]={B[1],B[2]......}
    如果某个数A[I]从C1[]中去掉。则从C2 []中挑选数字B[i1].B[i2].....加入C1顶替A[I]位置,原则如下:
    1.按照B[1].B[2]....顺序选;
    2.选中数字总和不得大于A[I];
    3.选中数字总和要尽最大可能接近A[I]。
    设计程序给出如何选择C2[]中的B[i1].B[i2].....,并输出i1,i2,...的值。如果A[I]小于所有B[]的值则输出“没有满足条件的数组”。
    

回复列表 (共3个回复)

沙发

忘记说了,我只学过C,没有学过C++,不要用到C++语言编写。我看不懂。

板凳

我觉得可以设计一个程序,第一次调用能选择出B[i1]。再调用这个程序重新构造数组
    C3[]={B[i1+1],B[i1+2]....}
中选择出B[i2]。。。反复调用,直到最后一个。但是我设计了很久都没有思路,觉得我思路太繁琐。还有就是关键在于C1,C2有多少个成员在设计中是不一定的,要看实际使用系统时,最后究竟有多少个人订了票和预订了票,不知道究竟应该设计为已知还是未知,还是我知识漏洞,有其他解决方法。所以循环体中循环条件不好设计。

3 楼

     啊?没有人回吗?
     至少给个好点的思路啊[em1]~~~~
     

我来回复

您尚未登录,请登录后再回复。点此登录或注册