上图是我想要的结果,因为代码还没写好所以图中最后的内容是加上去的。
思路:假设用户输入了数组v的10个数,然后输出10种方式的结果,然后用数组v对每行的结果进行筛选,最后将筛选结果符合的输出。
我的问题是:能不能把输出10种方式的结果用另外的数组把其储存起来,然后再用数组v里的10元素进行判断,最后把筛选结果显示出来?
下面是我写的代码请大神们帮忙改改如何实现:
#include<stdio.h>
int main()
{
int a,b,c,d,q,e,m;
int i=0;
int aa,bb,cc,dd,ee,ff,qq;
int z;
int t[100];
int v[9];
printf("输入数组v的10个数\n");
for(m=0;m<10;m++)
{
scanf("%d",&v[m]);
}
printf("输入第一个号码:");
scanf("%d",&aa);
printf("输入差值:");
while(scanf("%d", &a)==1)
{
if(a>=5)
{
break;
}
else
{
printf("输入有误请重新输入:");
}
}
printf("输出结果:\n");
for(c=1;c<a;c++)
{
for(b=1;b<a;b++)
{
for(d=1;d<a;d++)
{
for(e=1;e<a;e++)
{
for(q=1;q<a;q++)
{
if(b+c+e+q+d==a)
{
cc=aa+b;
dd=cc+c;
qq=dd+e;
ee=q+qq;
ff=ee+d;
printf("%d+%d+%d+%d+%d=%d ",b,c,e,q,d,a);
printf("%d %d %d %d %d %d\n",aa,cc,dd,qq,ee,ff);
printf("\n");
i++;
}
}
}
}
}
}
printf("共有%d种排列方式\n",i);
return 0;
}
|