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

2025-02-18 学习记录--C/C++-PTA 7-25 念数字

一、题目描述 ⭐️

在这里插入图片描述

二、代码(C语言)⭐️

/**
 * 输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。
 */

#include <stdio.h>

// 输出 正数 中 各位数 对应的 拼音
void getLetter(int num) {
    // 10个数字(0 ~ 9)对应的10个拼音(ling ~ jiu)
    // 定义一个字符串数组,包含10个字符串,每个字符串最大长度为39个字符(加上结尾的'\0')
    // 这里的40:最长字符是ling,长度为4,共有10个字符,所以最大长度是4*10=40个字符
    char strArr[10][40] = {"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
    // 接收 所输入整数 的各位数,放入numArr数组中(由低位到高位)
    int numArr[100] = {};
    // numArr数组中 所含数 的 个数
    int count = 0;

    // 获取到 所输入整数 的 各位数
    while(num != 0) {
        // 对 所输入整数 取余,获取到 所输入整数 的各位数
        int n = num % 10;
        // 将 所输入整数 的各位数 由低位到高位 放入numArr数组中
        numArr[count] = n;
        // numArr数组中 所含数 的 个数 加1
        count++;
        // 依次处理高位数
        num /= 10;
    }
    // 将 numArr数组中的数 倒序输出
    for(int i = count - 1; i >= 0; i--) {
        // 获取到 所输入整数 的 各位数(由高位到低位)
        int realNum = numArr[i];
        // 输出 所输入整数 的 各位数(由高位到低位)对应的拼音
        if(i == 0) {
            printf("%s",strArr[realNum]);
        } else {
            printf("%s ",strArr[realNum]);
        }
    }
}

int main() {
    int N; // 一个整数
    scanf("%d",&N); // 输入一个整数

    if(N == 0) {
        // 如果N是0,直接输出ling字。
        printf("ling");
    }else if(N < 0) {
        // 如果N是负数,先输出fu字。
        printf("fu ");
        // 将负数N 化成 正数N1
        int N1 = N * (-1);
        // 再继续输出 正数对应的拼音
        getLetter(N1);
    } else {
        // 如果N是正数,则直接输出 对应的拼音
        getLetter(N);
    }

    return 0;
}

在这里插入图片描述

http://www.dtcms.com/a/24316.html

相关文章:

  • 鱼骨图技能详解
  • macos安装jmeter测试软件
  • PHP语法入门完全指南(2024新版)
  • 【Spring】Spring配置文件
  • MapReduce远程调试
  • 如何利用快捷指令制作快递取件码提醒?
  • Java 反射机制深度解析:类信息的来源、declared 的区别、赋值操作及暴力反射
  • 如何避免redis长期运行持久化AOF文件过大的问题:AOF重写
  • Docker安装Quickwit搜索引擎
  • 捷米特 JM - RTU - TCP 网关应用 F - net 协议转 Modbus TCP 实现电脑控制流量计
  • 【gRPC】:快速上手gRPC与protobuf
  • 深入理解 C++17 中的 std::launder
  • 常用标准库之-std::iota
  • 初等数论--欧几里得算法
  • 网络技术变迁:从IPv4走向IPv6
  • Java基础(其一)
  • 计算机视觉:神经网络实战之手势识别
  • 【Python pro】基本数据类型
  • 算法——舞蹈链算法
  • 个人博客5年回顾
  • 巴克传动(航天伺服生产)MES系统规划方案
  • java 方法引用
  • 【Unity动画】导入动画资源到项目中,Animator播放角色动画片段,角色会跟随着动画播放移动。
  • C++ 如何销毁进程
  • 在Windows和Linux平台上使用c++获取文件当前路径
  • [AI相关]Unity的C#代码如何简写
  • 探索JavaScript网页设计的无限可能:从基础到AI集成
  • ChatBox对接DeepSeek R1大模型
  • wordpress企业官网建站的常用功能
  • golang channel底层实现?