找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1499

积分

0

好友

190

主题
发表于 前天 00:34 | 查看: 7| 回复: 0

题目要求

题目描述

任意输入一个字符,判断其 ASCII 值是否是奇数。若是,则输出 YES;否则,输出 NO

例如:

  • 字符 A 的 ASCII 值是 65(奇数),应输出 YES
  • 字符 B 的 ASCII 值是 66(偶数),则应输出 NO

输入格式

输入为一个字符。

输出格式

根据其 ASCII 值的奇偶性输出结果。若为奇数,输出 YES;若为偶数,输出 NO

样例输入 #1

A

样例输出 #1

YES

样例输入 #2

B

样例输出 #2

NO

题目分析

解题思路

本题的核心是考查基本的输入输出与逻辑判断能力,属于非常基础的编程练习题。解题过程可以分解为以下三步:

  1. 读取输入:从标准输入获取一个字符。
  2. 判断奇偶:将该字符强制转换为整型(int),即可得到其 ASCII 码值。使用取模运算符 % 判断该数值除以 2 的余数是否为 1(或不为 0)。
  3. 输出结果:根据判断结果,输出对应的 YESNO

这类基础的字符处理与条件判断题目,是学习和巩固算法与编程思维的重要环节。

示例代码 (C++)

#include <iostream>
using namespace std;

int main() {
    char n; // 定义字符变量 n
    cin >> n; // 读取输入的字符

    // 将字符 n 转换为整型得到其 ASCII 值,并判断是否为奇数
    if ((int)n % 2 != 0) {
        cout << "YES"; // ASCII 值为奇数,输出 YES
    } else {
        cout << "NO";  // ASCII 值为偶数,输出 NO
    }
    return 0;
}

代码解析

  1. char n;:声明一个字符型变量 n 用于存储输入。
  2. cin >> n;:使用标准输入流读取一个字符。
  3. (int)n % 2 != 0:这是判断的关键。
    • (int)n 将字符 n 显式转换为其对应的 ASCII 码整数值。
    • % 是取模运算符,(int)n % 2 计算该 ASCII 值除以 2 的余数。
    • != 0 判断余数是否不等于 0,即判断该数是否为奇数。
  4. 根据 if-else 条件判断的结果,输出相应的字符串。

本题“luogu-B2038”可在 洛谷在线评测系统 进行练习与提交。




上一篇:GESP C++三级算法实战:NOIP 2005校门外的树问题解析
下一篇:Streamdown流式Markdown渲染组件详解:在AI聊天应用中如何解决流式渲染难题?
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2025-12-24 17:16 , Processed in 0.217034 second(s), 39 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2025 云栈社区.

快速回复 返回顶部 返回列表