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; }elsereturn 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
300
给定程序中fun和funx函数的功能是:用二分法求方程 2x3−4x2+3x−6=0 的一个根,并要求绝对误差不超过0.001。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动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;elsen=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);
}
300
给定程序中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动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);
}
300
给定程序中函数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);
}
300
给定程序中函数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);
}
300
给定程序中函数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);
}
300
给定程序中函数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;elsereturn 0;
}
void main(){int n;scanf("%d",&n);if (fun(n))printf("YES\n");elseprintf("NO!\n");
}
300
给定程序中函数fun的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
平台会对你编写的代码进行测试:
测试输入: 56
预期输出: 56=19+37
开始你的任务吧,祝你成功!
#include
#include
void fun(int a,int *b,int *c){int i,j,d,y;for(i=3;i
300
给定程序中函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。
为了完成本关任务,你需要掌握:
请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。
平台会对你编写的代码进行测试:
测试输入: 19
预期输出: 23
开始你的任务吧,祝你成功!
#include
int fun(int m)
{ int i,k;for(i=m+1; ;i++){ for(k=2;k
300
给定程序中函数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));
}
300
给定程序的功能是:读入一个整数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
300
给定程序中函数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));
}
300
给定程序中函数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));
}
300
给定程序中函数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));
}
300
给定程序中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);
}
300
给定程序中函数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;elsec=fun(n-1)+2;return(c);
}
void main(){int n;scanf("%d",&n);printf("%d\n",fun(n));
}
300
给定程序中函数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);elsey=x1;return y;
}
void main(){double x;scanf("%lf",&x);printf("%lf\n",fun(x,1.0));
}