这个程序是要把第一个数组中大于等于x的数复制到第二个数组中,但是我不论输入x是多少,这个程序都会把所有的都复制到数组二中,实在看不出啥问题,请您帮忙看看。
#include<stdio.h>
#include<string.h>
int select1(double a[], double b[], int n, double x);
int main()
{
double shuzu1[]={3.,8.,4.,68.,24.,55.,33.5,86.};
int b=8;
double shuzu2[b];
double x;
printf("input a number:");
scanf("%d",&x);
b=select1(shuzu2,shuzu1,b,x);
printf("\nthe new shuzu is:");
int i;
for(i=0;i<b;i++)
printf("%f\n",shuzu2[i]);
return 0;
}
int select1(double a[], double b[], int n, double x)
{
int c,d;
for(c=0,d=0;c<n;c++)
{
if(b[c]>=x)
{
a[d]=b[c];
d++;
}
}
return c;
}