早教吧作业答案频道 -->其他-->
这个程序要求是输出m个数中任取n个数的所有组合,我要抓狂了==#include;#includeinta[100];voidcomb(intm,intn){inti=0;inth=0;for(i=m;i>=n;i--){a[n]=i;if(n>1){comb(i-1,n-1);}else{for(h=n;h>0;h--){printf("%d",&a[h]);}printf
题目详情
这个程序要求是输出m个数中任取n个数的所有组合,我要抓狂了= =
#include ;
#include
int a[100];
void comb(int m,int n){
int i=0;
int h=0;
for( i=m;i>=n;i--){
a[n]=i;
if(n>1){
comb(i-1,n-1);
}
else{
for(h=n;h>0;h--){
printf("%d",&a[h]);
}
printf("\n");
}
}
system("PAUSE");
}
void main(){
int m,n;
printf("please input the total number and the number you want to choose:");
scanf("%d%d",&m,&n);
comb(m,n);
}
#include ;
#include
int a[100];
void comb(int m,int n){
int i=0;
int h=0;
for( i=m;i>=n;i--){
a[n]=i;
if(n>1){
comb(i-1,n-1);
}
else{
for(h=n;h>0;h--){
printf("%d",&a[h]);
}
printf("\n");
}
}
system("PAUSE");
}
void main(){
int m,n;
printf("please input the total number and the number you want to choose:");
scanf("%d%d",&m,&n);
comb(m,n);
}
▼优质解答
答案和解析
个人看法:
程序中数组作用域是全局的,递归中会改变数组;else中输出时是不是改为printf("%d",a[h]),之前输出的好像是地址,我对printf函数不熟悉,可以直接cout.
建议换算法.用与数组等位数的二进制表示是否输出,1输出,0不输出.所有的二进制数列完,就输出完毕了.
下面是一个集合的所有子集输出,看看吧:
#include
#include
using namespace std;
int main()
{
int size;
cout size;
int * array = new int[ size ];
char * str = new char[ size + 1 ];
for( int i = 0; i < size; i ++ )
array[ i ] = i;
cout
程序中数组作用域是全局的,递归中会改变数组;else中输出时是不是改为printf("%d",a[h]),之前输出的好像是地址,我对printf函数不熟悉,可以直接cout.
建议换算法.用与数组等位数的二进制表示是否输出,1输出,0不输出.所有的二进制数列完,就输出完毕了.
下面是一个集合的所有子集输出,看看吧:
#include
#include
using namespace std;
int main()
{
int size;
cout size;
int * array = new int[ size ];
char * str = new char[ size + 1 ];
for( int i = 0; i < size; i ++ )
array[ i ] = i;
cout
看了 这个程序要求是输出m个数中任...的网友还看了以下:
从1-33中选出6个数字组成的所有组合中,需要满足以下要求的组合有多少个?A.要求存在相连的数字, 2020-05-13 …
数集A满足条件,若a∈A,则1+a/1-a∈A(a≠1),若1/3∈A,求集合A.要详细过程 2020-05-15 …
重证据,重调查研究,严禁逼供信政策的基本要求是( )A.要忠于事实真相,整个办案过程都要坚持以事实 2020-05-19 …
1.已知:x+1/x=6,那么x²+1/x²=2.已知:A=2x²-x+1,A-2B=x-1,求B 2020-05-23 …
船在静水中的航速V1=4m/s,该船横渡400m宽的河,河水流速V2=2m/s,求(a)要使船到达 2020-06-17 …
在三角形ABC中,若角A=2角B,边b=4,c=5,求边a要准确!特急! 2020-07-15 …
数据结构算法实现:利用两个线性表LA和LB分别表示两个集合A和B,现要求一个新的集合A=A并B.利 2020-07-27 …
1)设A={(x,y)|y=-4x+6}B={(y,x)|y=5x-3}求A∩B2)已知非空集合A 2020-08-01 …
1.橘子的进价是1元,销售中估计有5%的损耗,商家至少要把价格定为多少,才能避免亏本?2.已知集合A 2020-11-13 …
在我国社会主义现代化建设的新的历史时期,要坚持集体主义的价值取向,总的要求是A.要正确处理个人与国家 2020-12-15 …