C语言蓝桥杯组题目

news2024/11/26 11:30:37

系列文章目录

文章目录

  • 系列文章目录
  • 前言
  • 题目
    • 第一题.1, 2, 3, 4 能组成多少个互不相同且无重复数字的三位数?都是多少?
      • 思路
    • 第二题: 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
    • 第三题: 输入某年某月某日,判断这一天是这一年的第几天?
  • 第四题:输入三个整数X,Y,Z,请把这三个数由小到大输出
  • 第四题:C语言用*号输出字母C的图案
  • 持续更新中..
  • 经典结尾


前言

蓝桥杯看着很简单实际有点难度,只有自己熟练掌握语法之后再去刷算法题才可以游刃有余.

题目

第一题.1, 2, 3, 4 能组成多少个互不相同且无重复数字的三位数?都是多少?

结果:
  •  可以组成 24 个三位数。
    
  •  三位数分别是: 123, 124, 132, 134, 142, 143, 213, 214, 231, 234, 241, 243, 312, 314, 321, 324, 341, 342, 412, 413, 421, 423, 431, 432.
    
#include <stdio.h>
main() {
  int i, j, k;
  for (i = 1; i <= 4; i++) {
    for (j = 1; j <= 4; j++) {
      for (k = 1; k <= 4; k++) {
        if (i != j && i != k && j != k) {
          printf("i=%d j=%d k=%d ", i, j, k);
        }
      }
    }
  }
}

思路

  • 使用穷举算法

第二题: 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

结果:
  •   该数是 21
    
#include <stdio.h>
#include <math.h>

main() {
    int x;
    // 假设搜索范围为0到10000
    for (x = 0; x <= 10000; x++) {
        // 检查 x + 100 是否为完全平方数
        int a_square = x + 100;
        int b_square = x + 268;

        // 使用 sqrt 函数计算平方根并检查是否为完全平方数
        int a = (int)sqrt(a_square);
        int b = (int)sqrt(b_square);

        if (a * a == a_square && b * b == b_square) {
            printf("找到满足条件的整数: %d\n", x);
            return 0; // 找到解后退出
        }
    }

    printf("没有找到满足条件的整数。\n");
}

思路

  • 完全平方数检测:
  • 使用 sqrt() 函数计算平方根,并将结果转换为整数。
  • 检查 ( a ) 和 ( b ) 的平方是否分别等于 ( x + 100 ) 和 ( x + 268 )。

第三题: 输入某年某月某日,判断这一天是这一年的第几天?

结果:
  •   输入:
    
  •   	year:2000
    
  •   month:12
    
  •   	day:6
    
  •    结果: 341
    
#include <stdio.h>

int main() {
  int year, month, day, sum = 0,i;
  int days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
  printf("请输入年份:");
  scanf("%d", &year);
  printf("请输入月份:");
  scanf("%d", &month);
  printf("请输入日期:");
  scanf("%d", &day);

  // 判断是否为闰年
  if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
    days[1] = 29;
  }

  // 计算天数
  for ( i = 0; i < month - 1; i++) {
    sum += days[i];
  }
  sum += day;
  
  printf("%d年%d月%d日是这一年的第%d天", year, month, day, sum);

}

思路

  • 1.区分平年和闰年
  • 2.把每一年的天数加起来
  • 3.最后在输出

第四题:输入三个整数X,Y,Z,请把这三个数由小到大输出

结果:
  •   输入:
    
  •   	x: 200
    
  •       y: 12
    
  •   	z: 600
    
  •    结果: 12 200 600
    
#include <stdio.h>

main() {
    int X, Y, Z;
    
    // 输入三个整数
    printf("请输入三个整数(X Y Z):");
    scanf("%d %d %d", &X, &Y, &Z);
 
    // 使用简单的排序算法进行排序
    int temp;
    // 冒泡排序
    if (X > Y) {
        temp = X;
        X = Y;
        Y = temp;
    }
    if (X > Z) {
        temp = X;
        X = Z;
        Z = temp;
    }
    if (Y > Z) {
        temp = Y;
        Y = Z;
        Z = temp;
    }
    // 输出结果
    printf("由小到大的顺序为:%d %d %d\n", X, Y, Z);
}

思路

  •    1.三个数用冒泡排序输出
    

第四题:C语言用*号输出字母C的图案

#include <stdio.h>

main() {
    int height = 7; // 图案高度
    int width = 7;  // 图案宽度
    int i,j;
    for ( i = 0; i < height; i++) {
        for ( j = 0; j < width; j++) {
            // 输出 '*' 的条件
            if ((i == 0 && j > 0 && j < width - 1) ||  // 顶边
                (i == height - 1 && j > 0 && j < width - 1) ||  // 底边
                (j == 0 && (i > 0 && i < height - 1))) { // 左边
                printf("*");
            } else {
                printf(" ");
            }
        }
        printf("\n"); // 换行
    }
}
思路:
	1. 外层循环 for (int i = 0; i < height; i++) 控制行数(高度)。
	    内层循环 for (int j = 0; j < width; j++) 控制列数(宽度)。
	2. 第一行和最后一行打印 * 的条件是:当 i 为 0 或 height - 1,且 j 在 0 和 width - 1 之间。
		左边竖线的条件是:j == 0 且 i 在 0 和 height - 1 之间。
	3. 在符合条件的情况下打印 *,否则打印空格

持续更新中…

经典结尾

烛光照亮了晚餐,照不出个答案;恋爱不是温馨的请客吃饭.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2247814.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

三六零[601360]行情数据接口

1、三六零&#xff1a;实时行情 Restful API # 测试接口&#xff1a;可以复制到浏览器打开 https://tsanghi.com/api/fin/stock/XSHG/realtime?tokendemo&ticker601360获取股票实时行情&#xff08;开、高、低、收、量&#xff09;。 请求方式&#xff1a;GET。 Python示例…

用 OceanBase 4.3.3,搭建《黑神话:悟空》的专属游戏AI助手

本文分享了如何基于 OceanBase 4.3.3 bp1 社区版的向量检索能力&#xff0c;通过几条简单的命令&#xff0c;快速搭建一个定制化的专属游戏助手的过程。 背景 在 OceanBase 最新推出 V 4.3.3 免费试用的同时&#xff0c;也同时发布了几个基于OB Cloud 的向量能力&#xff0c;搭…

tableau练习-制作30个图表

一、导入数据 1、导入数据 -添加-添加连接-到文件-excel格式用第一个excel导入&#xff0c;csv格式用第二个文本格式导入 2、连接数据 -从旁边这里直接拖到中间 标头连接 -日期若不一致需调节日期格式 3、保存数据 点击数据提取-再保存数据&#xff0c;保存为twbx格式 二、设计…

QT QHorizontalSpacer控件 全面详解

本系列文章全面的介绍了QT中的57种控件的使用方法以及示例,包括 Button(PushButton、toolButton、radioButton、checkBox、commandLinkButton、buttonBox)、Layouts(verticalLayout、horizontalLayout、gridLayout、formLayout)、Spacers(verticalSpacer、horizontalSpacer)、…

第六届智能控制、测量与信号处理国际学术会议 (ICMSP 2024)

重要信息 2024年11月29日-12月1日 中国陕西西安石油大学雁塔校区 大会官网&#xff1a;www.icmsp.net 大会简介 第六届智能控制、测量与信号处理国际学术会议&#xff08;ICMSP 2024&#xff09;由西安石油大学、中海油田服务股份有限公司、浙江水利水电学院与中国石油装备…

Qt中2D绘制系统

目录 一、Qt绘制系统 1.1Qt绘制基本概念 1.2 绘制代码举例 1.3画家 1.3.1 QPainter的工作原理&#xff1a; 1.3.2 自定义绘制饼状图&#xff1a; 1.4画笔和画刷 1.4.1画笔 1.4.2 画刷填充样式 1.5 反走样和渐变 1.6绘制设备 1.7坐标变换 1.8QPainterPath 1.9绘制文…

Linux——Uboot命令使用

什么是Uboot&#xff1f; 1&#xff09;Uboot是一个裸机程序&#xff0c;比较复杂。类似我们PC机的BIOS程序。 2&#xff09;Uboot就是一个bootloader&#xff0c;作用就是用于启动Linux或者其他系统&#xff0c;Uboot最主要的工作是初始化DDR&#xff0c;因为Linux的运行是运行…

2024智能机器人与自动控制国际学术会议 (IRAC 2024)

主办&#xff0c;承办&#xff0c;支持单位 会议官网 www.icirac.org 大会时间&#xff1a;2024年11月29-12月1日 大会简介 2024智能机器人与自动控制国际学术会议 &#xff08;IRAC 2024&#xff09;由华南理工大学主办&#xff0c;会议将于2024年11月29日-12月1日在中国广…

Linux网络——NAT/代理服务器

一.NAT技术 1.NAT IP转换 之前我们讨论了, IPv4 协议中, IP 地址数量不充足的问题&#xff0c;NAT 技术就是当前解决 IP 地址不够用的主要手段, 是路由器的一个重要功能。 NAT 能够将私有 IP 对外通信时转为全局 IP. 也就是一种将私有 IP 和全局IP 相互转化的技术方法: 很…

【架构】主流企业架构Zachman、ToGAF、FEA、DoDAF介绍

文章目录 前言一、Zachman架构二、ToGAF架构三、FEA架构四、DoDAF 前言 企业架构&#xff08;Enterprise Architecture&#xff0c;EA&#xff09;是指企业在信息技术和业务流程方面的整体设计和规划。 最近接触到“企业架构”这个概念&#xff0c;转念一想必定和我们软件架构…

亚信安全发布《2024年第三季度网络安全威胁报告》

《亚信安全2024年第三季度网络安全威胁报告》的发布旨在从一个全面的视角解析当前的网络安全威胁环境。此报告通过详尽梳理和总结2024年第三季度的网络攻击威胁&#xff0c;目的是提供一个准确和直观的终端威胁感知。帮助用户更好地识别网络安全风险&#xff0c;并采取有效的防…

【c++】模板详解(2)

&#x1f31f;&#x1f31f;作者主页&#xff1a;ephemerals__ &#x1f31f;&#x1f31f;所属专栏&#xff1a;C 目录 前言 一、非类型模板参数 二、模板的特化 1. 概念 2. 场景举例 3. 函数模板的特化 4. 类模板的特化 全特化 偏特化 1. 部分特化 2. 对参数的…

红队笔记--W1R3S、JARBAS、SickOS、Prime打靶练习记录

W1R3S(思路为主) 信息收集 首先使用nmap探测主机&#xff0c;得到192.168.190.147 接下来扫描端口&#xff0c;可以看到ports文件保存了三种格式 其中.nmap和屏幕输出的一样&#xff1b;xml这种的适合机器 nmap -sT --min-rate 10000 -p- 192.168.190.147 -oA nmapscan/ports…

Qt/C++基于重力模拟的像素点水平堆叠效果

本文将深入解析一个基于 Qt/C 的像素点模拟程序。程序通过 重力作用&#xff0c;将随机分布的像素点下落并水平堆叠&#xff0c;同时支持窗口动态拉伸后重新计算像素点分布。 程序功能概述 随机生成像素点&#xff1a;程序在初始化时随机生成一定数量的像素点&#xff0c;每个…

十一月二十五

双向循环链表 class Node:#显性定义出构造函数def __init__(self,data):self.data data #普通节点的数据域self.next None #保存下一个节点的链接域self.prior None #保存前一个节点饿链接域 class DoubleLinkLoop:def __init__(self, node Node):self.head nodeself.siz…

Python + 深度学习从 0 到 1(00 / 99)

希望对你有帮助呀&#xff01;&#xff01;&#x1f49c;&#x1f49c; 如有更好理解的思路&#xff0c;欢迎大家留言补充 ~ 一起加油叭 &#x1f4a6; 欢迎关注、订阅专栏 【深度学习从 0 到 1】谢谢你的支持&#xff01; ⭐ 什么是深度学习&#xff1f; 人工智能、机器学习与…

UG NX二次开发(C++)-UIStyler-指定平面的对象和参数获取

文章目录 1、前言2、在UG NX中创建平面和一个长方体,3、在UI Styler中创建一个UI界面4、在VS中创建一个工程4.1 创建并添加工程文件4.2 在Update_cb方法中添加选择平面的代码4.3 编译完成并测试效果1、前言 在采用NXOpen C++进行二次开发时,采用Menu/UIStyler是一种很常见的…

C# 命令行运行包

环境&#xff1a;net6 nuget包&#xff1a;Cliwrap 3.6.7 program&#xff1a; 相当于cmd运行命令&#xff1a;nuget search json static async Task Main(string[] args) {var cmd Cli.Wrap("D:\\软件\\Nuget\\nuget.exe").WithArguments(args >args.Add("…

长三角文博会:Adobe国际认证体系推动设计人才评价新标准

2024年11月22日&#xff0c;由上海、江苏、浙江、安徽三省一市党委宣传部共同发起的第五届长三角文化博览会&#xff08;简称“长三角文博会”&#xff09;在上海国家会展中心盛大启幕。长三角文博会自2018年起已成功举办多届&#xff0c;已成为展示区域文化产业发展成果、推动…

音视频基础扫盲之视频码率控制策略(CBR、VBR还是ABR)

视频码率控制策略 CBR&#xff08;Constant Bit Rate&#xff09;、VBR&#xff08;Variable Bit Rate&#xff09;和ABR&#xff08;Average Bit Rate&#xff09;是三种常见的比特率控制方式&#xff0c;以视频码率控制为例&#xff0c;视频码率控制策略主要是在保证视频质量…