100
本关任务:给定程序中函数fun的功能是:根据输入的三条边长(整型),判断能否构成三角形,是构成等边三角形,还是等腰三角形。若能构成等边三角形,函数返回3;若能构成等腰三角形,函数返回2;若能构成一般三角形,函数返回1;若不能构成三角形函,数返回0。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。 提示:错误通常在/******found******/注释行的下一行。
平台会对你编写的代码进行测试:
测试输入: 1 2 3 预期输出: 0
测试输入: 4 5 6 预期输出: 1
测试输入: 6 6 6 预期输出: 3
开始你的任务吧,祝你成功!
- #include
- /********found********/
- int fun(int a, int b, int c)
- { if (a+b>c && b+c>a && a+c>b)
- {
- if (a==b && b==c)
- return 3;
- else if (a==b || b==c || a==c)
- return 2;
- else
- return 1;
- }
- else
- return 0;
- }
- void main()
- { int a,b,c,shape;
- scanf("%d%d%d",&a,&b,&c);
- shape = fun(a,b,c);
- printf("%d",shape);
- }
100
本关任务:给定程序中函数fun的功能是:计算小于形参k的最大的10个能被13或17整除的自然数之和。k的值由主函数传入。
为了完成本关任务,你需要掌握:1.算术运算符和逻辑运算符;2.累加求和。
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。 提示:错误通常在/******found******/注释行的下一行。
平台会对你编写的代码进行测试:
测试输入:500
预期输出: 4622
开始你的任务吧,祝你成功!
- #include
- int fun(int k)
- {
- int m = 0, mc = 0;
- while((k>=2) && (mc<10))
- {
- /********found********/
- if((k%13==0) || (k%17==0))
- { m = m+k;
- mc++;
- }
- k--;
- }
- return m;
- }
- /********found********/
- int main()
- {
- int a;
- scanf("%d",&a);
- printf("%d", fun(a));
- }
-
100
本关任务:函数fun的功能是:求整数x的y次方的低3位值。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。 提示:错误通常在/******found******/注释行的下一行。
平台会对你编写的代码进行测试:
测试输入: 15625 预期输出: 625
开始你的任务吧,祝你成功!
- #include
- long fun(int x,int y,long *p)
- { int i;
- long t = 1;
- /********found********/
- for (i=1; i<=y; i++)
- t = t*x;
- *p = t;
- /********found********/
- t = t%1000;
- return t;
- }
- void main()
- { long t,r;
- int x,y;
- scanf("%d%d",&x,&y);
- t = fun(x,y,&r);
- printf("%ld\n",t);
- }
300
本关任务:给定程序中函数fun的功能是:从3个红球、5个白球、6个黑球中任意取出8个作为一组,并输出组合数。在每组中,可以没有黑球,但必须要有红球和白球。组合数作为函数值返回。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
平台会对你编写的代码进行测试:
预期输出: 15
开始你的任务吧,祝你成功!
- #include
- int fun()
- { int i,j,k,sum = 0;
- /********found********/
- for(i=1;i<=3;i++)
- for(j=1;j<=5;j++)
- { k=8-i-j;
- /********found********/
- if(k>=0&&k<=6)
- {
- sum=sum+1;
- }
- }
- return sum;
- }
- void main()
- { int sum;
- sum=fun();
- printf("%4d",sum);
- }
100
本关任务:给定程序中函数fun的功能是:计算函数f(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值,其中x和y的值不等,z和y的值不等。
为了完成本关任务,你需要掌握:算数运算符。
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
平台会对你编写的代码进行测试:
测试输入: 9 11 15 预期输出: -3.50
开始你的任务吧,祝你成功!
- #include
- #include
- /********found********/
- #define FU(m,n) (m/n)
- float fun(float a,float b,float c)
- { float value;
- value=FU((a+b),(a-b))+FU((c+b),(c-b));
- /********found********/
- return(value);
- }
- void main()
- {
- float x,y,z,sum;
- scanf("%f%f%f",&x,&y,&z);
- if (x==y||y==z)
- { printf("Data error!\n");
- exit(0);
- }
- sum=fun(x,y,z);
- printf("%5.2f",sum);
- }
300
给定程序中函数fun的功能是:求三个数的最小公倍数。
为了完成本关任务,你需要掌握:
平台会对你编写的代码进行测试:
测试输入: 15 11 2
预期输出: 330
开始你的任务吧,祝你成功!
- #include
- /********found********/
- int fun(int x,int y,int z){
- int j,t,n,m;
- j=1;
- t=j%x;
- m=j%y;
- n=j%z;
- while(t!=0||m!=0||n!=0){
- j=j+1;
- t=j%x;
- m=j%y;
- n=j%z;
- }
- /********found********/
- return j;
- }
- void main(){
- int x1,x2,x3,j;
- scanf("%d%d%d",&x1,&x2,&x3);
- j=fun(x1,x2,x3);
- printf("%d",j);
- }
300
给定程序中函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
平台会对你编写的代码进行测试:
测试输入: 49,21; 预期输出: 7
测试输入: 27,81
预期输出: 27
-- 开始你的任务吧,祝你成功!
- #include
- int fun(int a,int b){
- int r,t;
- if(a
- /********found********/
- t=a;
- a=b;
- b=t;
- }
- r=a%b;
- while(r!=0) {
- a=b;
- b=r;
- r=a%b;
- }
- /********found********/
- return(b);
- }
- void main(){
- int num1,num2,a;
- scanf("%d%d",&num1,&num2);
- a=fun(num1,num2);
- printf("%d",a);
- }
第8关:8 二分法求方程根
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中fun和funx函数的功能是:用二分法求方程 2x3−4x2+3x−6=0 的一个根,并要求绝对误差不超过0.001。
相关知识
为了完成本关任务,你需要掌握:
- while语句
- 迭代法
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: -100 90
预期输出: 2.000
开始你的任务吧,祝你成功!
- #include
- #include
- double funx(double x){
- return (2*x*x*x-4*x*x+3*x-6);
- }
- double fun(double m,double n){
- /********found********/
- double r;
- r=(m+n)/2;
- /********found********/
- while(fabs(n-m)>0.001){
- if(funx(r)*funx(n)<0)
- m=r;
- else
- n=r;
- r=(m+n)/2;
- }
- return r;
- }
- void main(){
- double m,n,root;
- scanf("%lf%lf",&m,&n);
- root=fun(m,n);
- printf("%6.3f",root);
- }
第9关:9 各就各位
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。
相关知识
为了完成本关任务,你需要掌握:
- if语句
- 关系运算符
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 55 12 34
预期输出: 55.0,34.0,12.0
开始你的任务吧,祝你成功!
- #include
- void fun(float *p,float *q,float *s)
- {
- /********found********/
- float k;
- if (*p<*q)
- { k=*p;
- *p=*q;
- *q=k;
- }
- /********found********/
- if(*p<*s)
- { k=*s;
- *s=*p;
- *p=k;
- }
- if(*q<*s)
- { k=*q;
- *q=*s;
- *s=k;
- }
- }
- void main()
- { float a,b,c;
- scanf("%f%f%f",&a,&b,&c);
- fun(&a,&b,&c);
- printf("%4.1f,%4.1f,%4.1f\n",a,b,c);
- }
第10关:10 交换整数之一
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:实现两个整数的交换。
相关知识
为了完成本关任务,你需要掌握:变量值交换算法。
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 60 65
预期输出: 65,60
开始你的任务吧,祝你成功!
- #include
- /********found********/
- void fun(int *a, int *b) {
- int t;
- /********found********/
- t = *b;
- *b = *a;
- *a = t;
- }
- void main() {
- int a, b;
- scanf("%d%d", &a, &b);
- fun(&a, &b);
- printf("%d,%d\n", a, b);
- }
第11关:11 交换整数之二
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:交换主函数中两个变量的值
相关知识
为了完成本关任务,你需要掌握:变量值交换算法。
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 8 3
预期输出: 3,8
开始你的任务吧,祝你成功!
- #include
- /********found********/
- void fun(int *x,int *y){
- int t;
- /********found********/
- t=*x;
- *x=*y;
- *y=t;
- }
- void main(){
- int a,b;
- scanf("%d%d",&a,&b);
- fun(&a,&b);
- printf("%d,%d\n",a,b);
- }
第12关:12 交换整数之三
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是通过某种方式实现两个变量的交换,规定不允许增加语句和表达式。
相关知识
为了完成本关任务,你需要掌握:
- 变量值交换算法
- 函数参数传递
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 8 3
预期输出: 3,8
开始你的任务吧,祝你成功!
- #include
- int fun(int *x,int y){
- int t;
- /********found********/
- t=*x;
- *x=y;
- y=t;
- /********found********/
- return(y);
- }
- void main(){
- int a,b;
- scanf("%d%d",&a,&b);
- b = fun(&a,b);
- printf("%d,%d\n",a,b);
- }
第13关:13 素数判断
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main()函数中,若fun返回1输出YES,若fun返回0输出NO!
相关知识
为了完成本关任务,你需要掌握:
- 素数的概念
- 循环结构
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 17
预期输出: YES
开始你的任务吧,祝你成功!
- #include
- int fun(int m){
- int k=2;
- while(k<=m&&(m%k))
- /********found********/
- k++;
- /********found********/
- if(m==k)
- return 1;
- else
- return 0;
- }
- void main(){
- int n;
- scanf("%d",&n);
- if (fun(n))
- printf("YES\n");
- else
- printf("NO!\n");
- }
第14关:14 哥德巴赫猜想
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数
相关知识
为了完成本关任务,你需要掌握:
- 素数的概念
- 循环结构
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 56
预期输出: 56=19+37
开始你的任务吧,祝你成功!
- #include
- #include
- void fun(int a,int *b,int *c){
- int i,j,d,y;
- /********found********/
- y=1;
- for(j=2;j<=sqrt((double)i);j++)
- if(i%j==0)
- y=0;
- if (y==1) {
- /********found********/
- d = a-i;
- for(j=2;j<=sqrt((double)i);j++)
- if (d%j== 0)
- y=0;
- if (y==1){
- *b=i;
- *c=d;
- }
- }
- }
- }
- void main(){
- int a,b,c;
- do{
- scanf("%d",&a);
- } while(a%2);
- fun(a,&b,&c);
- printf("%d=%d+%d\n",a,b,c);
- }
第15关:15 m后的第一个素数
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。
相关知识
为了完成本关任务,你需要掌握:
- break语句
- 循环结构
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 19
预期输出: 23
开始你的任务吧,祝你成功!
- #include
- int fun(int m)
- { int i,k;
- for(i=m+1; ;i++)
- { for(k=2;k
- /********found********/
- if(i%k==0)
- break;
- /********found********/
- if(k==i)
- return(i);
- }
- }
- void main()
- {
- int n;
- scanf("%d",&n);
- printf("%d\n",fun(n));
- }
第16关:16 素数之和
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:计算并输出high以内最大的10个素数之和。high由主函数传给fun函数。
相关知识
为了完成本关任务,你需要掌握:
- 素数的概念
- 循环结构
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 100
预期输出: 732
开始你的任务吧,祝你成功!
- #include
- #include
- int fun(int high){
- int sum=0,n=0,j,yes;
- /********found********/
- while((high>=2)&&(n<10)){
- yes=1;
- for(j=2;j<=high/2;j++)
- if(high%j==0){
- yes=0;
- /********found********/
- break;
- }
- if(yes){
- sum+=high;
- n++;
- }
- high--;
- }
- return sum;
- }
- void main(){
- int n;
- scanf("%d",&n);
- printf("%d\n",fun(n));
- }
第17关:17 全部质因子
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序的功能是:读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有素数的因子)。
相关知识
为了完成本关任务,你需要掌握:
- 质因子的概念
- 循环结构
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 2310
预期输出:
2, 3, 5, 7, 11,
开始你的任务吧,祝你成功!
- #include
- /********found********/
- int IsPrime(int n)
- {
- int i,m;
- m=1;
- for(i=2;i
- /********found********/
- if(!(n%i)){
- m=0;
- break;
- }
- return(m);
- }
- void main(){
- int j,k;
- scanf("%d",&k);
- for(j=2;j
- if((!(k%j))&&(IsPrime(j)))
- printf("%4d,",j);
- }
第18关:18 求阶乘之一
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:求k!(k<13),所求阶乘的值作为函数值返回。
相关知识
为了完成本关任务,你需要掌握:
- 循环结构
- 函数递归调用
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 10
预期输出: 3628800 `
开始你的任务吧,祝你成功!
- #include
- long fun(int k){
- /********found********/
- if (k>0)
- return (k*fun(k-1));
- /********found********/
- else if (k==0)
- return 1L;
- }
- void main() {
- int k;
- scanf("%d",&k);
- printf("%ld\n",fun(k));
- }
第19关:19 求阶乘之二
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:计算整数n的阶乘。
相关知识
为了完成本关任务,你需要掌握:
- 循环结构
- 累乘
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 5
预期输出: 5!=120
开始你的任务吧,祝你成功!
- #include
- double fun(int n) {
- double result = 1.0;
- while (n>1 && n<170)
- /********found********/
- result *= n--;
- /********found********/
- return result;
- }
- void main() {
- int n;
- scanf("%d", &n);
- printf("\n\n%d!=%1g\n",n,fun(n));
- }
第20关:20 求阶乘之三
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:计算n!。
相关知识
为了完成本关任务,你需要掌握:
- 循环结构
- 累乘
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 5
预期输出: 120.000000 `
开始你的任务吧,祝你成功!
- #include
- double fun(int n){
- double result=1.0;
- /********found********/
- if (n==0)
- return 1.0;
- while(n>1&&n<170)
- /********found********/
- result *= n--;
- return result;
- }
- void main(){
- int n;
- scanf("%d",&n);
- printf("%1f\n",fun(n));
- }
第21关:21 斐波那契数列
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中fun函数的功能是:用递归算法计算斐波那契数列中第n项的值。
相关知识
为了完成本关任务,你需要掌握:
- 斐波那契数列
- 迭代法
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 7
预期输出: 13
开始你的任务吧,祝你成功!
- #include
- long fun(int g){
- /********found********/
- switch(g)
- {
- case 0:
- return 0;
- /********found********/
- case 1:
- case 2:
- return 1;
- }
- return(fun(g-1)+fun(g-2));
- }
- void main(){
- long fib;
- int n;
- scanf("%d",&n);
- fib=fun(n);
- printf("%d\n",fib);
- }
第22关:22 递归调用
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:按以下递归公式求函数值。 n=1时,fun(n)=10 n>1时,fun(n)=fun(n−1)+2
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 5
预期输出: 18
开始你的任务吧,祝你成功!
- #include
- /********found********/
- int fun(int n){
- int c;
- /********found********/
- if(n==1)
- c=10;
- else
- c=fun(n-1)+2;
- return(c);
- }
- void main(){
- int n;
- scanf("%d",&n);
- printf("%d\n",fun(n));
- }
第23关:23 递归法求平方根
300
- 任务要求
- 参考答案
- 评论2
- 关卡排行榜
任务描述
给定程序中函数fun的功能是:应用递归算法求a的平方根。求平方根的迭代公式如下: x1=(1/2)∗(x0+(a/x0))
相关知识
为了完成本关任务,你需要掌握:
- 循环结构
- 递归调用
编程要求
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
测试说明
平台会对你编写的代码进行测试:
测试输入: 2
测试输出: 1.414214
开始你的任务吧,祝你成功!
- #include
- #include
- /********found********/
- double fun(double a,double x0){
- double x1,y;
- x1=(x0+a/x0)/2.0;
- /********found********/
- if (fabs(x1-x0)>0.00001)
- y=fun(a, x1);
- else
- y=x1;
- return y;
- }
- void main(){
- double x;
- scanf("%lf",&x);
- printf("%lf\n",fun(x,1.0));
- }
-
相关阅读:
spring-data Page/Sort类型 jackson序列化模块
vuex的学习
【BP-Adaboost预测】基于BP神经网络的Adaboost的单维时间序列预测研究(Matlab代码实现)
一种隐私保护边云协同训练
面试java框架-Spring
圣杯布局的两种实现
【C++学习笔记】引用
C++11 - 8 -智能指针
【GoWeb项目-个人Blog】个人Blog开篇
Linux系统:基本命令
-
原文地址:https://blog.csdn.net/m0_70469414/article/details/128082748