当前位置: 首页 > news >正文

头歌实验---C/C++程序设计:实验三:选择结构程序设计进阶

目录

第1关:快递费用计算

任务描述

答案代码

第2关:计算一元二次方程的根

任务描述

答案代码

第3关:产品信息格式化

任务描述

答案代码

第4关:字母转换

任务描述

答案代码

第5关:输出最大最小数

任务描述

答案代码

第6关:日期

任务描述

答案代码


第1关:快递费用计算

任务描述

答案代码

#include<stdio.h>
#include<math.h>
	int main(void)
	{  
	  /*********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;
	}

第2关:计算一元二次方程的根

任务描述

答案代码

#include<math.h>
#include<stdio.h>
	int main(void)
	{  
        double a,b,c,d;
        double x1,x2;
        printf("Please enter the coefficients a,b,c:\n");
        scanf("%lf,%lf,%lf",&a,&b,&c);
        if(a==0){
            printf("error!\n");
        }
        else {
            d=(b*b)-(4*a*c);
            if(d>0)
        {  
             x1=(-b+sqrt(d))/(2.0000*a);
            x2=(-b-sqrt(d))/(2.0000*a);
            printf("x1=%.4f, x2=%.4f\n",x1,x2);
        }
        else if(d==0)
        {
            x1=x2=-b/(2.0000*a);
            printf("x1=%.4f, x2=%.4f\n",x1,x2);
        }
        else if(d<0)
        {
            printf("error!\n");
        }
        }
    return 0;
     }
        
        
    
    

第3关:产品信息格式化

任务描述

答案代码

#include<stdio.h>
	int main()
	{  
	  /*********Begin*********/
      int item = 0,mm = 0, dd = 0,yy = 0;
      double unit = 0;
	 printf("Enter item number:\n");
     scanf("%d",&item);
     printf("Enter unit price:\n");
     scanf("%lf",&unit);
     printf("Enter purchase date (mm/dd/yy):\n");
     scanf("%d/%d/%d",&mm,&dd,&yy);
     printf("Item Unit Purchase\n");
     printf("%-9d$ %-9.2f%02d%02d%02d\n",item,unit,mm,dd,yy);

	  
	  /*********End**********/ 
       return 0;
	}

第4关:字母转换

任务描述

答案代码

#include  <stdio.h>
int main()
{ 
	char c1,c2;
	c1=getchar();
	if(c1>='A'&&c1<='Z')
	{
		
	/*****以下一行有错误*****/
		c2=c1+32;
		
		if(c2>='a' && c2<='u')
			
	/*****以下一行有错误*****/
			c2=c2+5;
			
		else  if(c2>='v' && c2<='z')	c2=c2-21;
		printf("The letter %c change to %c\n",c1,c2);
	}
	
	return 0;
}

第5关:输出最大最小数

任务描述

答案代码

/********** Begin **********/
#include<stdio.h>
int main(void)
{
    int a,b,c,max,min;
    scanf("%d%d%d",&a,&b,&c);
    if(a>b)
    {
        max=a;
        min=b;
    }
    else
    {
        max=b;
        min=a;
    }
    if(c>max)
    {
        max=c;
        min=min;
    }
    else
    {
        if(c<b) min=c;
        else min=b;
    }
    printf("max = %d\n",max);
    printf("min = %d",min);
    return 0;
}




/********** End **********/

第6关:日期

任务描述

答案代码


#include  <stdio.h>

#define THIRTY_ONE 31
#define THIRTY 30
#define LEAP_MOUTH 29
#define NO_LEAP_MOUTH 28

int judgeyear(int year){
    int day=28;
    if((year%4==0 && year%100!=0) || year % 400 == 0){
        day=29;
    }
    return day;

}
int main()
{
    int sequence=0;
	int year,mouth,day;
	/*printf("请输入年月日(用-隔开):");*/
	scanf("%d%*c%d%*c%d",&year,&mouth,&day);
	switch(mouth){
            case 12:
            case 11:
            sequence+=+(mouth>11)*30;
            case 10:
            sequence+=+(mouth>10)*31;
            case 9:
            sequence+=+(mouth>9)*31;
            case 8:
            sequence+=+(mouth>8)*30;
            case 7:
            sequence+=+(mouth>7)*31;
            case 6:
            sequence+=+(mouth>6)*30;
            case 5:
            sequence+=+(mouth>5)*31;
            case 4:
            sequence+=+(mouth>4)*30;
            case 3:
            sequence+=+(mouth>3)*31;
            case 2:
            sequence+=+(mouth>2)*judgeyear(year);
            case 1:
            sequence+=+(mouth>1)*31;
            sequence +=day;
	}
	printf("%d",sequence);
	return 0;
}

相关文章:

  • 重庆网站建设最大如何加入广告联盟赚钱
  • 成都网站制作公司有哪些seo网站优化方案案例
  • 广东的网站备案湖北短视频搜索seo
  • wordpress cascadeseo助理
  • 物流炒货怎么做网站十种营销方式
  • 企业网站访问量的第一来源是( )百度信息流开户多少钱
  • <Revit二次开发>详细介绍Autodesk.Revit.DB.HostObject类的FindInserts 方法
  • Java 大视界 —— Java 大数据在智慧能源微电网能量管理中的关键技术(100)
  • TVbox蜂蜜影视:智能电视观影新选择,简洁界面与强大功能兼具
  • 如何在 WPS 中集成 DeepSeek
  • 工程化与框架系列(11)--Serverless实践
  • ES、OAS、ERP、电子政务、企业信息化(高软35)
  • 卷积神经网络梯度下降方向与参数更新方向的一致性论述
  • 隐蔽多客户端上网的 Linux 服务器配置指南
  • Ubuntu22.04安装docker教程
  • 自然语言处理基础
  • Hunyuan3D-2 本地部署教程:大规模 3D 资产创作系统,快速生成高保真3D模型!
  • Android -- 使用Sharepreference保存List储存失败,原因是包含Bitmap,drawable等类型数据
  • 前端各大框架路由跳转
  • 【leetcode hot 100 438】找到字符串中所有字母异位词
  • Burp Suite Professional 2024版本安装激活指南
  • 鸿蒙HarmonyOS 开发简介
  • 数据库MySQL,在终端输入后,提示不是内部命令等
  • 【Redis】Redis 入门
  • NO.21十六届蓝桥杯备战|一维数组|范围for|memset|memcpy(C++)
  • 数据库复习