问题如下:
现有10,20,50,100,500五种砝码,任取五种砝码各n种,求得有多少种称重结果!(n<=10)
#include<stdio.h>
#include<math.h>
int count;
void change(int c[],int n)//改变二进制数组次c[]中的数值,每次相当于加一
{
int i;
for(i=0;i<n;i++)
{
if(c[i])
c[i]=0;
else
{
c[i]=1;
break;//每当有c[i]=1,跳出循环
}
}
}
void weigh(int new[],int n)//筛选函数
{
int i;
int index=0;
for(i=1;i<n;i++)
{
if(new[index]!=new[i])
{
new[++index]=new[i];//选出不同的砝码和,放入new函数中
}
}
for(i=1;i<=index;i++)
{
count+=1;
printf("%d\t",new[i]);
if((count%6)==0)
printf("\n");
}
printf("\n");
printf("\n");
printf("%d",count);
}
void AllSort(int a[],int n)//排序函数
{
int i,j;
for(i=0;i<n;i++)
for(j=i+1;j&