网站后台seo设置,电脑小游戏网站,微盟登录,wordpress 侧导航栏文章目录 第1关#xff1a;从自然数中取3个数进行组合之循环算法任务描述编程要求测试说明参考答案 第2关#xff1a;从自然数中取3个数进行组合之递归算法任务描述编程要求测试说明参考答案 第3关#xff1a;求n的阶乘n!任务描述编程要求测试说明参考答案 第4关#xff1a… 文章目录 第1关从自然数中取3个数进行组合之循环算法任务描述编程要求测试说明参考答案 第2关从自然数中取3个数进行组合之递归算法任务描述编程要求测试说明参考答案 第3关求n的阶乘n!任务描述编程要求测试说明参考答案 第4关求斐波那契额数列的前10项任务描述编程要求测试说明参考答案 第1关从自然数中取3个数进行组合之循环算法
任务描述
本关任务用循环算法找出 5 个自然数中取 3 个数的组合。
编程要求
请在右侧编辑器Begin-End处补充代码完成本关任务。
测试说明
平台会对你编写的代码进行测试比对你输出的数值与实际正确数值只有所有数据全部计算正确才能通过测试 测试输入5 3 n5r3表示从1,2,3,4,5自然数中选择 3 个数) 预期输出
1 2 3
1 2 4
1 2 5
1 3 4
1 3 5
1 4 5
2 3 4
2 3 5
2 4 5
3 4 5参考答案
#include stdio.hvoid combloop1(int n, int r)
{/********** Begin **********/for(int i1;in;i){for(int j2;jn;j){for(int k3;kn;k)if((ij)(jk)){printf(%d %d %d,i,j,k);printf(\n);}}}/********** End **********/
}void main()
{int n,r;scanf(%d%d,n,r);combloop1(n,r);
}
第2关从自然数中取3个数进行组合之递归算法
任务描述
本关任务用递归算法找出 5 个自然数中取 3 个数的组合。
编程要求
请在右侧编辑器Begin-End处补充代码完成本关任务。
测试说明
平台会对你编写的代码进行测试比对你输出的数值与实际正确数值只有所有数据全部计算正确才能通过测试 测试输入5 3 n5r3表示从1,2,3,4,5自然数中选择 3 个数) 预期输出
5 4 3
5 4 2
5 4 1
5 3 2
5 3 1
5 2 1
4 3 2
4 3 1
4 2 1
3 2 1参考答案
#include stdio.h
int a[100];
void combrecur(int n, int r)
{/********** Begin **********/int i,j;for(in;ir;i--){ a[r]i;if(r1){combrecur(i-1,r-1);}else{for(ja[0];j0;j--){printf(%d,a[j]);printf( );}printf(\n);}}/********** End **********/
}void main()
{/********** Begin **********/int n,r;scanf(%d %d,n,r);if(nr){a[0]r;combrecur(n,r);}/********** End **********/
}第3关求n的阶乘n!
任务描述
本关任务用循环和递归算法求 n小于 10 的正整数 的阶乘 n!。
编程要求
请在右侧编辑器Begin-End处补充代码完成本关任务。
测试说明
平台会对你编写的代码进行测试比对你输出的数值与实际正确数值只有所有数据全部计算正确才能通过测试 测试输入10 预期输出
递归算法求得10! 3628800
循环算法求得10! 3628800参考答案
#include stdio.h
int s1;
float fac_recursion(int n)
{/********** Begin **********/
if(n1)
return 1;
else
return n*fac_recursion(n-1);/********** End **********/
}float fac_loop(int n)
{/********** Begin **********/
for(int in;i1;i--){
s*i;
}
return s;/********** End **********/
}void main()
{int n;float y;scanf(%d,n);yfac_recursion(n);printf(递归算法求得%d! %.0f \n,n,y);yfac_loop(n);printf(循环算法求得%d! %.0f \n,n,y);
}第4关求斐波那契额数列的前10项
任务描述
本关任务用循环和递归算法求斐波那契额数列的前 10 项。
编程要求
请在右侧编辑器Begin-End处补充代码完成本关任务。
测试说明
平台会对你编写的代码进行测试比对你输出的数值与实际正确数值只有所有数据全部计算正确才能通过测试 测试输入10 预期输出
递归算法求的前10项为: 1 1 2 3 5 8 13 21 34 55
循环算法求的前10项为: 1 1 2 3 5 8 13 21 34 55参考答案
#include stdio.h
int fibo_recur(int n)
{/********** Begin **********/if(n1||n2)return 1;elsereturn fibo_recur(n-1)fibo_recur(n-2);/********** End **********/
}int fibo_loop(int n)
{/********** Begin **********/int a1,b1,c;if(n2)return a;else{for(int i3;in;i){cab;ab;bc;}return c;}/********** End **********/
}void main()
{int n,y,i;scanf(%d,n);printf(递归算法求的前10项为:);for(i1; in; i){yfibo_recur(i);printf(%3d,y);}printf(\n循环算法求的前10项为:);for(i1; in; i){yfibo_loop(i);printf(%3d,y);}
}