• 蓝桥杯刷题(二)



    在这里插入图片描述

    蓝桥杯题库

    一.空间

    在这里插入图片描述

    这道题很简单,要弄清单位间的转换和如何输出就可以啦

    在这里插入图片描述

    #include 
    
    int main()
    {
      printf("%.0f",256/(32/4/2/1024.0000/1024));
      return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    记住除的数里面一定要至少一个带小数点哟,不然会直接为0

    二.排序

    在这里插入图片描述

    这道题看似很困难,实际上只要看到它的限制条件(最短,最小),其实就能发现规律啦

    (1,0)两个元素需要冒泡一次,(2,1,0)三个元素需要冒泡三次,(3,2,1,0)四个元素需要冒泡5次,所以我们可以看出对于这种完全乱序的数组,我们最多需要排序n(n-1)/2次

    #include
    int main()
    {
      //这里需要排105次至少得15个字符
    
      //而15个字符如果完全乱序最多可排105次
    
      //那么我们就以最小代价移动,也就是j向前移动5位
    
      printf("jonmlkihgfedcba");
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    ps:字典序最小就是首元素最小

    三.成绩分析

    在这里插入图片描述在这里插入图片描述

    #include 
    #include 
    
    int main()
    {
      int n,i,score[10000],max=0,min=100;
        float aver=0;
        scanf("%d",&n);
        for(i=0;i<n;i++)
        {
            scanf("%d",&score[i]);
            aver+=score[i];
            if(max<score[i])
            {
              max=score[i];
            }
            if(min>score[i])
            {
             min=score[i];
            }
        }
        aver=aver/n;
        printf("%d\n%d\n%.2f\n",max,min,aver);
      return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    这道题比较简单,没什么好说的

    四.蛇形填数

    在这里插入图片描述

    在这里插入图片描述

    这样其实可以看出其实是1+4+8+16,如果去掉第一个数其实就是等差数列,这样可以算出到第20个数时其实+4*19,利用等差公式可以得出第20个数是761

    #include
    
    int main()
    {
      printf("761");
      return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    五.跑步锻炼(较难)

    在这里插入图片描述

    这道题我是从年,月,日分别考虑的。
    1.年是从2000年开始到2020年
    3.月份用一个数组存起来
    4.天数从第一天到这个月的最后一天

    #include 
    
    int main()
    {
      int i=0,day=0,sum=0,n=6;//因为是从星期6开始,所以n设为6,n为星期几
      int month[13]=//这里月份从一开始,较好计算
      {0,31,28,31,30,31,30,31,31,30,31,30,31};
      int year=0;
      for(year=2000;year<=2020;year++)//年份
      {
        if((year%4==0&&year%100!=0)||(year%400==0))//判断闰年
        {
          month[2]=29;//该2月的天数
        }
        else
        {
          month[2]=28;
        }
        for(i=1;i<=12;i++)//从第一月到第12月
        {
          for(day=1;day<=month[i];day++)//每一天
          {
             if(n==8)//达到星期8时,就改为星期一
             {
               n=1;
             }
             if(n==1||day==1)//如果是星期一或者每月第一天,就多跑1km
             {
               sum++;
             }
            n++;
            sum++;//每天跑1km
           if(year==2020&&i==10&&day==1)//判断是否是目的时间
           {
            printf("%d",sum);
           }
          }
        }
      }
      return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
  • 相关阅读:
    R155法规有没有要求上Secure Boot功能?
    ssh免密登录&传输
    创建一个自定义关卡资源(二)
    网络编程——python
    一些资源收集
    (15)线程的实例认识:同步,异步,并发,并发回调,事件,异步线程,UI线程
    【技术指南资料】编码器与正交译码器
    【Node.js】module 模块化
    linux环境搭建mysql5.7总结
    class12:async 和 await
  • 原文地址:https://blog.csdn.net/m0_73790767/article/details/127936446