头歌实训平台C语言答案

慈云数据 2024-04-23 技术支持 44 0

C语言程序设计编辑与调试环境

第1关:打印输出 Hello Word

任务描述

本关任务:通过运行一个C语言程序,让你初步了解程序的运行方法。

相关知识(略)
编程要求

请补充Begin-End之间的代码,使用printf()在屏幕上输出 Hello World

测试说明

平台会对你编写的代码进行测试,若是与预期输出相同,则算通关。 视频

输入:无

输出:Hello World

#include
	int main(void)
	{  
	/********* Begin *********/
    printf("Hello World");
	/********* End *********/
       return 0;
	}

第2关:打印输出图形

任务描述

本关任务:参照上面调试的程序,编写一个能输出规定图形的程序。

相关知识(略)
编程要求

编写一个C程序,输出以下图案,并上机调试通过。第一行开头有4个空格,第二行开头有3个空格,第三行有2个空格,第四行开头有一个空格,第五行开头没有空格,9个*。

   *  ***   OK  Hello!*********
测试说明

平台会对你编写的代码进行测试,若是与预期输出相同,则算通关。

输入:无

输出:

   *  ***   OK  Hello!*********

提示 本题通过执行多个printf函数输出每一行即可,暂时不用考虑使用循环

#include
	int main(void)
	{  	
	/********* Begin *********/
    printf("    *\n   ***\n  OK\n Hello!\n*********");
	/********* End *********/
       return 0;
	}

第3关:求3个数的最大值

任务描述

本关任务:编写一个程序,输入a、b、c三个整数,输出其中最大值。

相关知识
输入

输入一行数据,分别为a b c。

输出

a b c其中最大的数,不用换行。

如何求出最大值

求几个数的最大值?

三个数两两比较,将较大的数存入最大值变量max;

编程要求

根据提示,在右侧编辑器Begin-End中补充代码,计算并输出三个数的最大值。

测试说明

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

测试输入:10,30,20 预期输出:max=30

测试输入:15,78,85 预期输出:max=85

提示:

注意输入输出格式。

#include
	int main(void)
	{  
	/********* Begin *********/
	int a,b,c,max;
    scanf("%d,%d,%d",&a,&b,&c);
    if(a>b&&a>c)
    max=a;
    if(b>a&&b>c)
    max=b;
    if(c>a&&c>b)
    max=c;
    printf("max=%d",max);
	/********* End *********/
       return 0;
	}

第4关:熟悉C语言调试过程

任务描述

本关任务:以下程序源代码有错误,请使用C语言的调试功能,检查程序的错误并更正,使之能正确运行。

程序源代码:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-I0RTCVKU-1672219198631)(C:\Users\86183\Pictures\Screenshots\屏幕截图_20221228_155026.png)]

相关知识(略)
编程要求

程序中要求键盘输入x的值,当x的值为5时输出*****,否则输出#####。

  • 输入:整数x的值。
  • 输出:当x的值为5时输出*****,否则输出#####。
    测试说明

    平台会对你编写的代码进行测试,若是与预期输出相同,则算通关。

    输入:5 输出:*****

    #include
    int main(void)
      {
    	  /********* Begin *********/
          int  x,y,z;
          y=2;z=3;
          scanf("%d",&x); 
          if (x==y+z)
              printf("*****");
          else  
              printf("#####" );
          return 0;
    	  /********* End *********/
      }
    

    选择结构程序设计

    第1关:排序

    任务描述

    本关任务:下面的程序是从键盘输入三个整数按从小到大的顺序输出。

    *为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。*

    相关知识
    输入格式

    输入格式如下:

    printf("请输入三个整数:");` `scanf("%d%d%d",&a,&b,&c);
    
    输出

    排序输出从小到大的三个整数。

    输出格式如下:

    printf("从小到大排列为:%d,%d,%d",a,b,c);
    
    编程要求

    请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充,完成编写排序的小程序。

    测试说明

    平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。

    样例输入:

    请输入三个整数:5 7 6
    

    样例输出:

    从小到大排列为:5,6,7
    
    #include
    	int main(void)
    	{  
    	  /*********Begin*********/
          int a,b,c,t;
    	  printf("请输入三个整数:");
          scanf("%d%d%d",&a,&b,&c);
          if(a>b)
          {
              t=a;
              a=b;
              b=t;
          }
          else
          a=a;b=b;
          if(a>c)
          {
              t=a;
              a=c;
              c=t;
          }
          else
          a=a;c=c;
          if(b>c)
          {
              t=b;
              b=c;
              c=t;
          }
          else
          b=b;c=c;
          printf("从小到大排列为:%d,%d,%d",a,b,c);
    	  /*********End**********/ 
           return 0;
    	}
    

    第2关:选择结构-闰年判断

    任务描述

    编写程序,完成如下功能:从键盘输入任意年份year,判别该年份是否闰年。 *为避免出现格式错误,请直接拷贝粘贴题目中给的格式字符串和提示信息到你的程序中。*

    相关知识
    输入

    从键盘任意输入一个年份 。

    输出

    根据是否闰年进行输出,是输出"****是闰年!“,否输出”****不是闰年!",其中****为当前输入的年份。

    样例输入
    2000
    
    样例输出
    2000 是闰年!
    

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

    编程要求

    请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充,完成编写选择结构-闰年判断的小程序。

    测试说明

    平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。

    #include
    	int main(void)
    	{  
    	  /*********Begin*********/
    	  int year;
          scanf("%d",&year);
          if(year%400==0)
          {
              printf("%d 是闰年!",year);
          }
          else
          {
              printf("%d 不是闰年!",year);  
          }
    	  /*********End**********/ 
           return 0;
    	}
    

    第3关:选择结构-分段函数问题

    任务描述

    本关任务:编写程序,根据输入的值,输出函数的值。

    有一个函数,定义如下

    img

    写一段程序,输入x,输出y。

    相关知识
    输入

    从键盘任意输入一个数x

    输出

    一个数y,保留小数点后三位。

    编程要求

    请仔细阅读右侧代码,结合相关知识,在Begin-End区域内进行代码补充,完成编写选择结构-分段函数问题的小程序。

    测试说明

    平台会对您的代码进行运行测试,如果实际输出与预期输出相同,则算通关。 样例输入:

    14
    

    样例输出:

    181.000
    
    #include
     int main(void)
     {  
       /*********Begin*********/
       double x,y;
          scanf("%lf",&x);
          if(x
              y=x*x+x-6;
          }
          else if(x=0 && x
              y=x*x-5*x+6;
          }
          else{
              y=x*x-x-1;
          }
          printf("%.3f",y);
       /*********End**********/ 
           return 0;
     }
      
       /*********Begin*********/
       int n;
          scanf("%d",&n);
          if(n100 || n
              printf("Score is error!");
              return 0;
          }
          else if(n=90 && n
              printf("A");
              return 0;
          }
          else if(n=80 && n
              printf("B");
              return 0;
          }
          else if(n=70 && n
              printf("C");
              return 0;
          }
          else if(n=60 && n
              printf("D");
              return 0;
          }
       else if(n
              printf("E");
              return 0;
          }
       /*********End**********/ 
           return 0;
     }
      
    	  int a,b,c; 
          //Please input a,b:
    	  /*********Begin*********/
          scanf("%d,%d",&a,&b);
          c=a+b;
          printf("%d+%d=%d\n",a,b,c);
    	  /*********End**********/ 
           return 0;
    	}
      
    	  int a,b;
    	  //Enter a and b:
          scanf("%d%d",&a,&b); 
          printf("a=%d b=%d\n",a,b);
    	  /*********Begin*********/
          a=b-a;
          b=b-a;
          a=b+a;
    	  /*********End**********/
    	  printf("a=%d  b=%d\n",a,b);  
           return 0;
    	}
      
    	  /*********Begin*********/
          int x;
          scanf("%d",&x);
          int y;
          y=PRICE*x;
          printf("%d\n",y);
    	  /*********End**********/ 
           return 0;
    	}
      
    	  /*********Begin*********/
          int x,a,b,c;
          scanf("%d",&x);
          a=x/100;
          b=(x/10)%10;
          c=x%10;
          printf("%d %d %d\n",a,b,c);
    	  /*********End**********/ 
           return 0;
    	}
      
    	  /*********Begin*********/
          int a,b,c,d,e,sum;
          float average;
          scanf("%d %d %d %d %d",&a,&b,&c,&d,&e);
          sum=a+b+c+d+e;
          average=sum/5.00;
          printf("%d %.2f",sum,average);
    	  /*********End**********/ 
           return 0;
    	}
      
    	  /*********Begin*********/
          float a,b,c,s,area;
          scanf("%f %f %f",&a,&b,&c);
          s=(a+b+c)/2.000;
          area=sqrt(s*(s-a)*(s-b)*(s-c));
          printf("%.3f\n",area);
    	  /*********End**********/ 
           return 0;
    	}
      
    	  /*********Begin*********/
          double r,h,C1,Sb,Vb,PI;
          scanf("%lf,%lf",&r,&h);
          PI=3.14;
          C1=2*PI*r;
          Sb=4*PI*r*r;
          Vb=PI*r*r*h;
          printf("C1=%.2f\nSb=%.2f\nVb=%.2f\n",C1,Sb,Vb);
    	  /*********End**********/ 
           return 0;
    	}
     
       int c; 
       if(a 
         c=a%b; 
         a=b;
         b=c;
       } 
      return a; 
    }   
    int main(void)
    	{  
    	  /*********Begin*********/
        int a,b;
        scanf("%d,%d",&a,&b);
        printf("%d\n",MaxCommonFactor(a,b));
    	  /*********End**********/ 
        return 0;
    }
      
    	  /*********Begin*********/
          int q;
          float weight;
          scanf("%d,%f",&q,&weight);
          if(q==0)
          printf("Price: %.2f\n",10+3.0*ceil(weight-1));
          else if(q==1)
          printf("Price: %.2f\n",10+4.0*ceil(weight-1));
          else if(q==2)
          printf("Price: %.2f\n",15+5.0*ceil(weight-1));
          else if(q==3)
          printf("Price: %.2f\n",15+6.5*ceil(weight-1));
          else if(q==4)
          printf("Price: %.2f\n",15+10.0*ceil(weight-1));
          else
          {
              printf("Error in Area\n");
              printf("Price: 0.00");
          }
    	  /*********End**********/ 
           return 0;
    	}
      
    	  /*********Begin*********/
          float a,b,c,x1,x2;
          printf("Please enter the coefficients a,b,c:\n");
          scanf("%f,%f,%f",&a,&b,&c);
          x1=(-b+sqrt(b*b-4*a*c))/(2*a);
          x2=(-b-sqrt(b*b-4*a*c))/(2*a);
          if(b*b-4*a*c
              printf("error!\n");
          }
          else
          {
              printf("x1=%.4f, x2=%.4f\n",x1,x2);
          }
    	  /*********End**********/ 
           return 0;
    	}
      
    	  /*********Begin*********/
          printf("Enter item number:\n");
          int n;
          scanf("%d",&n);
          printf("Enter unit price:\n");
          float price;
          scanf("%f",&price);
          printf("Enter purchase date (mm/dd/yy):\n");
          int m,d,y;
          scanf("%d/%d/%d",&m,&d,&y);
          printf("Item Unit Purchase\n");
          printf("%-9d$ %-9.2f%02d%02d%02d\n",n,price,m,d,y);
    	  /*********End**********/ 
           return 0;
    	}
      
       /*********Begin*********/
     float m,n,h,i,t,sum;
     scanf("%f %f",&m,&n);
     sum=m;
     for(i=1;i
     t=m/2;
     h=t/2;
     sum+=2*t;
     m=t; 
     }
     printf("%.2f %.2f",h,sum);
       /*********End**********/ 
           return 0;
     }
      
    	  /*********Begin*********/
          int n,s=1;
          scanf("%d", &n);
          for(int i=5;i  
    	  /*********Begin*********/
    	  int m,n,t,a,b,i;
          scanf("%d %d",&m,&n);
          if(mn)
          {
              t=m;
              m=n;
              n=t;
          }
          a=n;b=m;
          while(i!=0)
          {
              i=a%b;
              a=b;
              b=i;
          }
          printf("最大公约数是:%d\n",a);
          printf("最小公倍数是:%d\n",m*n/a);
    	  /*********End**********/ 
           return 0;
        }
    
微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon