C语言蓝桥杯进阶

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 一、题目
    • [1、在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm × 841mm,将 A0 纸沿长边对折后为 A1 纸,大小为 841mm × 594mm,在对折的过程中长度直接取下整(实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸,依此类推。](#1、在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm × 841mm,将 A0 纸沿长边对折后为 A1 纸,大小为 841mm × 594mm,在对折的过程中长度直接取下整(实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸,依此类推。)
  • 持续更新中
  • 结尾

前言

随着计算机编程语言的发展,很多东西逐渐饱和了;但是算法会跟随你一辈子的逻辑思维,任何人都拿不走.


提示:以下是本篇文章正文内容,下面案例可供参考

一、题目

1、在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm × 841mm,将 A0 纸沿长边对折后为 A1 纸,大小为 841mm × 594mm,在对折的过程中长度直接取下整(实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸,依此类推。

答案:

c 复制代码
请输入纸张名称 (A0, A1, A2, ..., A9): A6
A6: 105 mm × 148 mm

代码:

c 复制代码
#include <stdio.h>
#include <string.h>

struct Paper {
    int width;  // 宽度 (mm)
    int height; // 高度 (mm)
};

// 初始化 ISO A 系列纸张尺寸
void initializePapers(struct Paper papers[]) {
    papers[0].width = 841;   // A0
    papers[0].height = 1189;
    int i; 
    for ( i = 1; i <= 9; i++) {
        papers[i].width = papers[i - 1].height;             // 短边为长边
        papers[i].height = papers[i - 1].width / 2;         // 长边为短边的一半
    }
}

// 根据纸张名称查找并打印尺寸
void printPaperSize(const char *paperName, struct Paper papers[]) {
    int index = paperName[1] - '0'; // 获取纸张等级数字(如:A2 -> 2)

    if (index >= 0 && index <= 9) {
        printf("%s: %d mm × %d mm\n", paperName, papers[index].width, papers[index].height);
    } else {
        printf("无效的纸张名称。\n");
    }
}

int main() {
    struct Paper papers[10]; // 存储 A0 到 A9 尺寸
    initializePapers(papers); // 初始化纸张尺寸

    char paperName[3]; // 用于接收纸张名称(如 "A0")
    
    // 输入纸张名称
    printf("请输入纸张名称 (A0, A1, A2, ..., A9): ");
    fgets(paperName, sizeof(paperName), stdin);

    // 去掉换行符
    size_t len = strlen(paperName);
    if (len > 0 && paperName[len - 1] == '\n') {
        paperName[len - 1] = '\0';
    }

    // 打印相应纸张的尺寸
    printPaperSize(paperName, papers);

    return 0;
}

思路:

c 复制代码
1.纸张结构体:
定义了 struct Paper 用于存储纸张的宽度和高度。
2.初始化纸张尺寸:
initializePapers(struct Paper papers[]) 函数用于初始化 A0 到 A9 的尺寸。
3.打印纸张尺寸:
printPaperSize(const char *paperName, struct Paper papers[]) 函数根据输入的纸张名称找到相应的尺寸并打印。
4.主函数:
在 main() 函数中,首先调用 initializePapers 函数来初始化纸张尺寸。
然后接收用户输入的纸张名称,并去掉换行符。
5.最后调用 printPaperSize 函数打印相应纸张的尺寸。

持续更新中

结尾

Come on!

相关推荐
Scott9999HH1 小时前
【IIoT流量实战】蒸汽管道阀门全关却仍有流量?用 Python 实现涡街信号 FFT 频谱分析与温压全补偿积算网关,深度拆解靠谱的涡街流量计厂家硬核技术标准
开发语言·python
码智社2 小时前
AES加密原理详解及Java实现加解密实战
java·开发语言
AI云海2 小时前
python 列表、元组、集合和字典
开发语言·python
萧瑟余晖3 小时前
JDK 26 新特性详解
java·开发语言
马优晨4 小时前
Freemarker 完整讲解(后端 Java 模板引擎)
java·开发语言·freemarker·freemarker 完整讲解·freemarker模板引擎
人邮异步社区5 小时前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大6 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf
ttwuai6 小时前
Cursor 生成 CRUD 后,Go 后台接口别只测 200:JWT、RBAC 和 tenant_id 怎么验
开发语言·后端·golang
এ慕ོ冬℘゜6 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript
执明wa7 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio