求个能提供数据库搜索功能的C语言源程序

来源:百度知道 编辑:UC知道 时间:2024/05/11 15:52:51
程序编写的不要太难,因为我也想学习一下,现在要实现的功能方面我只知道要求有搜索功能,比方说我手头上只有 1 2 5 10 20 50,然后当要求搜索30的时候,能提示出“30需要一个10和一个20”,另外提示的部分不能超过3个元件的搭配,就比如不能提示“30需要两个5、一个10和一个20”,要求用C语言编写。
我希望给我答案的朋友是自己编写的,因为我可能对要求还有小部分的修改,这样会编写的朋友也能相应的帮我修改一下。另外希望给程序的朋友能在关键的程序部分稍微的给我注解一下,这样方便我学习。
恩,就先想到这些了。确实,我的要求比较多,希望大家帮帮忙,在这我就先给100分,然后最后帮我弄好之后我再追加100分。
我明天会上来具体说一下要求,然后就麻烦大家了,大家可以把你们编写好的程序发到我邮箱里sl_feng0323@tom.com,然后我们邮箱交流,等弄好了我再上来加分!谢谢大家了!
1楼,等我弄明白了再教你哈。。。
2楼,你写的这也太笼统了吧,我看不懂耶。
3楼,我进去找了一下,没发现和我的一样的呀。。。

#include <stdio.h>
#include <malloc.h>
int chazhao(int a[],int x,int y);

int main(void)
{
int *shoushang_number;
int sousuo_number,i,n;

printf("输入手上拥有数的个数: ");
scanf("%d",&n);
shoushang_number = (int*)malloc(n*sizeof(int*));
printf("输入拥有的数字:");
for(i=0;i<n;i++)
scanf("%d",(shoushang_number+i));
printf("输入搜索数: ");
scanf("%d",&sousuo_number);
chazhao(shoushang_number,n,sousuo_number);
free(shoushang_number);

return 0;
}

int chazhao(int a[],int x,int y)
{
int b=0,k=0,h=0,c=0,j,m=0,q=0;

for(j=0;j<x;j++)
{
if((y==a[j])&&(b!=1))
{
printf("可能组合方式: 需要一个%d\n",a[j]);
b++;
}
}

for(j=0;j<x;j++)
{
k=a[j];
h=j;
for(;j<x;j++)
{
if((y==(k+a[j]))&&(