• 基本计算(空军工程大学)


    第1关:1 三角形类型

    100

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    本关任务:给定程序中函数fun的功能是:根据输入的三条边长(整型),判断能否构成三角形,是构成等边三角形,还是等腰三角形。若能构成等边三角形,函数返回3;若能构成等腰三角形,函数返回2;若能构成一般三角形,函数返回1;若不能构成三角形函,数返回0。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 逻辑表达式
    2. if语句

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。 提示:错误通常在/******found******/注释行的下一行。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 1 2 3 预期输出: 0

    测试输入: 4 5 6 预期输出: 1

    测试输入: 6 6 6 预期输出: 3


    开始你的任务吧,祝你成功!

    1. #include
    2. /********found********/
    3. int fun(int a, int b, int c)
    4. { if (a+b>c && b+c>a && a+c>b)
    5. {
    6. if (a==b && b==c)
    7. return 3;
    8. else if (a==b || b==c || a==c)
    9. return 2;
    10. else
    11. return 1;
    12. }
    13. else
    14. return 0;
    15. }
    16. void main()
    17. { int a,b,c,shape;
    18. scanf("%d%d%d",&a,&b,&c);
    19. shape = fun(a,b,c);
    20. printf("%d",shape);
    21. }

    第2关:2 整除

    100

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    本关任务:给定程序中函数fun的功能是:计算小于形参k的最大的10个能被13或17整除的自然数之和。k的值由主函数传入。

    相关知识

    为了完成本关任务,你需要掌握:1.算术运算符和逻辑运算符;2.累加求和。

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。 提示:错误通常在/******found******/注释行的下一行。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入:500

    预期输出: 4622


    开始你的任务吧,祝你成功!

    1. #include
    2. int fun(int k)
    3. {
    4. int m = 0, mc = 0;
    5. while((k>=2) && (mc<10))
    6. {
    7. /********found********/
    8. if((k%13==0) || (k%17==0))
    9. { m = m+k;
    10. mc++;
    11. }
    12. k--;
    13. }
    14. return m;
    15. }
    16. /********found********/
    17. int main()
    18. {
    19. int a;
    20. scanf("%d",&a);
    21. printf("%d", fun(a));
    22. }

    第3关:3 低三位

    100

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    本关任务:函数fun的功能是:求整数x的y次方的低3位值。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 算数运算符
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。 提示:错误通常在/******found******/注释行的下一行。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 15625 预期输出: 625


    开始你的任务吧,祝你成功!

    1. #include
    2. long fun(int x,int y,long *p)
    3. { int i;
    4. long t = 1;
    5. /********found********/
    6. for (i=1; i<=y; i++)
    7. t = t*x;
    8. *p = t;
    9. /********found********/
    10. t = t%1000;
    11. return t;
    12. }
    13. void main()
    14. { long t,r;
    15. int x,y;
    16. scanf("%d%d",&x,&y);
    17. t = fun(x,y,&r);
    18. printf("%ld\n",t);
    19. }

    第4关:4 摸彩球

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    本关任务:给定程序中函数fun的功能是:从3个红球、5个白球、6个黑球中任意取出8个作为一组,并输出组合数。在每组中,可以没有黑球,但必须要有红球和白球。组合数作为函数值返回。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 循环嵌套
    2. 穷举

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    预期输出: 15


    开始你的任务吧,祝你成功!

    1. #include
    2. int fun()
    3. { int i,j,k,sum = 0;
    4. /********found********/
    5. for(i=1;i<=3;i++)
    6. for(j=1;j<=5;j++)
    7. { k=8-i-j;
    8. /********found********/
    9. if(k>=0&&k<=6)
    10. {
    11. sum=sum+1;
    12. }
    13. }
    14. return sum;
    15. }
    16. void main()
    17. { int sum;
    18. sum=fun();
    19. printf("%4d",sum);
    20. }

    第5关:5 求函数值

    100

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    本关任务:给定程序中函数fun的功能是:计算函数f(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值,其中x和y的值不等,z和y的值不等。

    相关知识

    为了完成本关任务,你需要掌握:算数运算符。

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 9 11 15 预期输出: -3.50


    开始你的任务吧,祝你成功!

    1. #include
    2. #include
    3. /********found********/
    4. #define FU(m,n) (m/n)
    5. float fun(float a,float b,float c)
    6. { float value;
    7. value=FU((a+b),(a-b))+FU((c+b),(c-b));
    8. /********found********/
    9. return(value);
    10. }
    11. void main()
    12. {
    13. float x,y,z,sum;
    14. scanf("%f%f%f",&x,&y,&z);
    15. if (x==y||y==z)
    16. { printf("Data error!\n");
    17. exit(0);
    18. }
    19. sum=fun(x,y,z);
    20. printf("%5.2f",sum);
    21. }

    第6关:6 最小公倍数

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:求三个数的最小公倍数。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 最小公倍数的概念
    2. 循环结构

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 15 11 2

    预期输出: 330


    开始你的任务吧,祝你成功!

    1. #include
    2. /********found********/
    3. int fun(int x,int y,int z){
    4. int j,t,n,m;
    5. j=1;
    6. t=j%x;
    7. m=j%y;
    8. n=j%z;
    9. while(t!=0||m!=0||n!=0){
    10. j=j+1;
    11. t=j%x;
    12. m=j%y;
    13. n=j%z;
    14. }
    15. /********found********/
    16. return j;
    17. }
    18. void main(){
    19. int x1,x2,x3,j;
    20. scanf("%d%d%d",&x1,&x2,&x3);
    21. j=fun(x1,x2,x3);
    22. printf("%d",j);
    23. }

    第7关:7 最大公约数

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:求出两个非零正整数的最大公约数,并作为函数值返回。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 最大公约数的概念
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 4921; 预期输出: 7

    测试输入: 2781

    预期输出: 27

    -- 开始你的任务吧,祝你成功!

    1. #include
    2. int fun(int a,int b){
    3. int r,t;
    4. if(a
    5. /********found********/
    6. t=a;
    7. a=b;
    8. b=t;
    9. }
    10. r=a%b;
    11. while(r!=0) {
    12. a=b;
    13. b=r;
    14. r=a%b;
    15. }
    16. /********found********/
    17. return(b);
    18. }
    19. void main(){
    20. int num1,num2,a;
    21. scanf("%d%d",&num1,&num2);
    22. a=fun(num1,num2);
    23. printf("%d",a);
    24. }

    第8关:8 二分法求方程根

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中fun和funx函数的功能是:用二分法求方程 2x3−4x2+3x−6=0 的一个根,并要求绝对误差不超过0.001。

    相关知识

    为了完成本关任务,你需要掌握:

    1. while语句
    2. 迭代法

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: -100 90

    预期输出: 2.000


    开始你的任务吧,祝你成功!

    1. #include
    2. #include
    3. double funx(double x){
    4. return (2*x*x*x-4*x*x+3*x-6);
    5. }
    6. double fun(double m,double n){
    7. /********found********/
    8. double r;
    9. r=(m+n)/2;
    10. /********found********/
    11. while(fabs(n-m)>0.001){
    12. if(funx(r)*funx(n)<0)
    13. m=r;
    14. else
    15. n=r;
    16. r=(m+n)/2;
    17. }
    18. return r;
    19. }
    20. void main(){
    21. double m,n,root;
    22. scanf("%lf%lf",&m,&n);
    23. root=fun(m,n);
    24. printf("%6.3f",root);
    25. }

    第9关:9 各就各位

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中,中间的放在b中。

    相关知识

    为了完成本关任务,你需要掌握:

    1. if语句
    2. 关系运算符

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 55 12 34

    预期输出: 55.0,34.0,12.0


    开始你的任务吧,祝你成功!

    1. #include
    2. void fun(float *p,float *q,float *s)
    3. {
    4. /********found********/
    5. float k;
    6. if (*p<*q)
    7. { k=*p;
    8. *p=*q;
    9. *q=k;
    10. }
    11. /********found********/
    12. if(*p<*s)
    13. { k=*s;
    14. *s=*p;
    15. *p=k;
    16. }
    17. if(*q<*s)
    18. { k=*q;
    19. *q=*s;
    20. *s=k;
    21. }
    22. }
    23. void main()
    24. { float a,b,c;
    25. scanf("%f%f%f",&a,&b,&c);
    26. fun(&a,&b,&c);
    27. printf("%4.1f,%4.1f,%4.1f\n",a,b,c);
    28. }

    第10关:10 交换整数之一

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:实现两个整数的交换。

    相关知识

    为了完成本关任务,你需要掌握:变量值交换算法。

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 60 65

    预期输出: 65,60


    开始你的任务吧,祝你成功!

    1. #include
    2. /********found********/
    3. void fun(int *a, int *b) {
    4. int t;
    5. /********found********/
    6. t = *b;
    7. *b = *a;
    8. *a = t;
    9. }
    10. void main() {
    11. int a, b;
    12. scanf("%d%d", &a, &b);
    13. fun(&a, &b);
    14. printf("%d,%d\n", a, b);
    15. }

    第11关:11 交换整数之二

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:交换主函数中两个变量的值

    相关知识

    为了完成本关任务,你需要掌握:变量值交换算法。

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 8 3

    预期输出: 3,8


    开始你的任务吧,祝你成功!

    1. #include
    2. /********found********/
    3. void fun(int *x,int *y){
    4. int t;
    5. /********found********/
    6. t=*x;
    7. *x=*y;
    8. *y=t;
    9. }
    10. void main(){
    11. int a,b;
    12. scanf("%d%d",&a,&b);
    13. fun(&a,&b);
    14. printf("%d,%d\n",a,b);
    15. }

    第12关:12 交换整数之三

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是通过某种方式实现两个变量的交换,规定不允许增加语句和表达式。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 变量值交换算法
    2. 函数参数传递

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 8 3

    预期输出: 3,8


    开始你的任务吧,祝你成功!

    1. #include
    2. int fun(int *x,int y){
    3. int t;
    4. /********found********/
    5. t=*x;
    6. *x=y;
    7. y=t;
    8. /********found********/
    9. return(y);
    10. }
    11. void main(){
    12. int a,b;
    13. scanf("%d%d",&a,&b);
    14. b = fun(&a,b);
    15. printf("%d,%d\n",a,b);
    16. }

    第13关:13 素数判断

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:判断一个整数m是否是素数,若是返回1,否则返回0。在main()函数中,若fun返回1输出YES,若fun返回0输出NO!

    相关知识

    为了完成本关任务,你需要掌握:

    1. 素数的概念
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 17

    预期输出: YES


    开始你的任务吧,祝你成功!

    1. #include
    2. int fun(int m){
    3. int k=2;
    4. while(k<=m&&(m%k))
    5. /********found********/
    6. k++;
    7. /********found********/
    8. if(m==k)
    9. return 1;
    10. else
    11. return 0;
    12. }
    13. void main(){
    14. int n;
    15. scanf("%d",&n);
    16. if (fun(n))
    17. printf("YES\n");
    18. else
    19. printf("NO!\n");
    20. }

    第14关:14 哥德巴赫猜想

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:为一个偶数寻找两个素数,这两个素数之和等于该偶数,并将这两个素数通过形参指针传回主函数

    相关知识

    为了完成本关任务,你需要掌握:

    1. 素数的概念
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 56

    预期输出: 56=19+37


    开始你的任务吧,祝你成功!

    1. #include
    2. #include
    3. void fun(int a,int *b,int *c){
    4. int i,j,d,y;
    5. for(i=3;i2;i=i+2){

    第15关:15 m后的第一个素数

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:找出一个大于给定整数m且紧随m的素数,并作为函数值返回。

    相关知识

    为了完成本关任务,你需要掌握:

    1. break语句
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 19

    预期输出: 23


    开始你的任务吧,祝你成功!

    1. #include
    2. int fun(int m)
    3. { int i,k;
    4. for(i=m+1; ;i++)
    5. { for(k=2;k
    6. /********found********/
    7. if(i%k==0)
    8. break;
    9. /********found********/
    10. if(k==i)
    11. return(i);
    12. }
    13. }
    14. void main()
    15. {
    16. int n;
    17. scanf("%d",&n);
    18. printf("%d\n",fun(n));
    19. }

    第16关:16 素数之和

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:计算并输出high以内最大的10个素数之和。high由主函数传给fun函数。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 素数的概念
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 100

    预期输出: 732


    开始你的任务吧,祝你成功!

    1. #include
    2. #include
    3. int fun(int high){
    4. int sum=0,n=0,j,yes;
    5. /********found********/
    6. while((high>=2)&&(n<10)){
    7. yes=1;
    8. for(j=2;j<=high/2;j++)
    9. if(high%j==0){
    10. yes=0;
    11. /********found********/
    12. break;
    13. }
    14. if(yes){
    15. sum+=high;
    16. n++;
    17. }
    18. high--;
    19. }
    20. return sum;
    21. }
    22. void main(){
    23. int n;
    24. scanf("%d",&n);
    25. printf("%d\n",fun(n));
    26. }

    第17关:17 全部质因子

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序的功能是:读入一个整数k(2≤k≤10000),打印它的所有质因子(即所有素数的因子)。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 质因子的概念
    2. 循环结构

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 2310

    预期输出:
    2, 3, 5, 7, 11,


    开始你的任务吧,祝你成功!

    1. #include
    2. /********found********/
    3. int IsPrime(int n)
    4. {
    5. int i,m;
    6. m=1;
    7. for(i=2;i
    8. /********found********/
    9. if(!(n%i)){
    10. m=0;
    11. break;
    12. }
    13. return(m);
    14. }
    15. void main(){
    16. int j,k;
    17. scanf("%d",&k);
    18. for(j=2;j
    19. if((!(k%j))&&(IsPrime(j)))
    20. printf("%4d,",j);
    21. }

    第18关:18 求阶乘之一

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:求k!(k<13),所求阶乘的值作为函数值返回。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 循环结构
    2. 函数递归调用

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 10

    预期输出: 3628800 `


    开始你的任务吧,祝你成功!

    1. #include
    2. long fun(int k){
    3. /********found********/
    4. if (k>0)
    5. return (k*fun(k-1));
    6. /********found********/
    7. else if (k==0)
    8. return 1L;
    9. }
    10. void main() {
    11. int k;
    12. scanf("%d",&k);
    13. printf("%ld\n",fun(k));
    14. }

    第19关:19 求阶乘之二

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:计算整数n的阶乘。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 循环结构
    2. 累乘

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 5

    预期输出: 5!=120


    开始你的任务吧,祝你成功!

    1. #include
    2. double fun(int n) {
    3. double result = 1.0;
    4. while (n>1 && n<170)
    5. /********found********/
    6. result *= n--;
    7. /********found********/
    8. return result;
    9. }
    10. void main() {
    11. int n;
    12. scanf("%d", &n);
    13. printf("\n\n%d!=%1g\n",n,fun(n));
    14. }

    第20关:20 求阶乘之三

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:计算n!。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 循环结构
    2. 累乘

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 5

    预期输出: 120.000000 `


    开始你的任务吧,祝你成功!

    1. #include
    2. double fun(int n){
    3. double result=1.0;
    4. /********found********/
    5. if (n==0)
    6. return 1.0;
    7. while(n>1&&n<170)
    8. /********found********/
    9. result *= n--;
    10. return result;
    11. }
    12. void main(){
    13. int n;
    14. scanf("%d",&n);
    15. printf("%1f\n",fun(n));
    16. }

    第21关:21 斐波那契数列

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中fun函数的功能是:用递归算法计算斐波那契数列中第n项的值。

    相关知识

    为了完成本关任务,你需要掌握:

    1. 斐波那契数列
    2. 迭代法

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 7

    预期输出: 13


    开始你的任务吧,祝你成功!

    1. #include
    2. long fun(int g){
    3. /********found********/
    4. switch(g)
    5. {
    6. case 0:
    7. return 0;
    8. /********found********/
    9. case 1:
    10. case 2:
    11. return 1;
    12. }
    13. return(fun(g-1)+fun(g-2));
    14. }
    15. void main(){
    16. long fib;
    17. int n;
    18. scanf("%d",&n);
    19. fib=fun(n);
    20. printf("%d\n",fib);
    21. }

    第22关:22 递归调用

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:按以下递归公式求函数值。 n=1时,fun(n)=10 n>1时,fun(n)=fun(n−1)+2

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 5

    预期输出: 18


    开始你的任务吧,祝你成功!

    1. #include
    2. /********found********/
    3. int fun(int n){
    4. int c;
    5. /********found********/
    6. if(n==1)
    7. c=10;
    8. else
    9. c=fun(n-1)+2;
    10. return(c);
    11. }
    12. void main(){
    13. int n;
    14. scanf("%d",&n);
    15. printf("%d\n",fun(n));
    16. }

    第23关:23 递归法求平方根

    300

    • 任务要求
    • 参考答案
    • 评论2
    • 关卡排行榜

    任务描述

    给定程序中函数fun的功能是:应用递归算法求a的平方根。求平方根的迭代公式如下: x1=(1/2)∗(x0+(a/x0))

    相关知识

    为了完成本关任务,你需要掌握:

    1. 循环结构
    2. 递归调用

    编程要求

    请改正程序中的错误,使它能得出正确的结果,不要改动main函数,不得增行或删行,也不得更改程序的结构。

    测试说明

    平台会对你编写的代码进行测试:

    测试输入: 2

    测试输出: 1.414214

    开始你的任务吧,祝你成功!

    1. #include
    2. #include
    3. /********found********/
    4. double fun(double a,double x0){
    5. double x1,y;
    6. x1=(x0+a/x0)/2.0;
    7. /********found********/
    8. if (fabs(x1-x0)>0.00001)
    9. y=fun(a, x1);
    10. else
    11. y=x1;
    12. return y;
    13. }
    14. void main(){
    15. double x;
    16. scanf("%lf",&x);
    17. printf("%lf\n",fun(x,1.0));
    18. }

  • 相关阅读:
    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