亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

C++如何判斷輸入的是不是數字

c++
小億
747
2023-12-04 16:46:29
欄目: 編程語言

在C++中,可以使用以下方法來判斷輸入的是否為數字:

  1. 使用isdigit()函數:isdigit()函數是C++標準庫中的一個函數,用于判斷一個字符是否為數字字符。可以使用該函數逐個判斷輸入字符串中的每個字符是否為數字字符。
#include <iostream>
#include <cctype> // 包含isdigit()函數的頭文件

int main() {
    std::string input;
    std::cout << "請輸入一個字符串:";
    std::cin >> input;

    bool isNumber = true;
    for (char c : input) {
        if (!std::isdigit(c)) {
            isNumber = false;
            break;
        }
    }

    if (isNumber) {
        std::cout << "輸入的是數字。\n";
    } else {
        std::cout << "輸入的不是數字。\n";
    }

    return 0;
}
  1. 使用try-catch語句:可以嘗試將輸入的字符串轉換為數字,如果轉換成功則說明輸入的是數字,否則就不是數字。這可以通過捕獲std::invalid_argument或std::out_of_range異常來實現。
#include <iostream>
#include <string>
#include <stdexcept> // 包含std::invalid_argument和std::out_of_range異常的頭文件

int main() {
    std::string input;
    std::cout << "請輸入一個字符串:";
    std::cin >> input;

    try {
        double number = std::stod(input);
        std::cout << "輸入的是數字。\n";
    } catch (const std::invalid_argument& ia) {
        std::cout << "輸入的不是數字。\n";
    } catch (const std::out_of_range& oor) {
        std::cout << "輸入的數字超出范圍。\n";
    }

    return 0;
}

上述方法中,第一種方法適用于判斷輸入是否為整數或小數,第二種方法適用于判斷輸入是否為任意浮點數(包括整數和小數),但有一定的性能開銷。根據具體需求選擇合適的方法。

0
台山市| 福泉市| 崇信县| 宁化县| 万全县| 谢通门县| 松潘县| 神农架林区| 沈阳市| 灵台县| 清河县| 赣州市| 当雄县| 海原县| 太仓市| 中山市| 东乡族自治县| 通海县| 阿瓦提县| 五峰| 康乐县| 澄城县| 华阴市| 剑河县| 绥宁县| 广饶县| 黄浦区| 孙吴县| 呼图壁县| 简阳市| 项城市| 阜平县| 南木林县| 柘城县| 娱乐| 上虞市| 营山县| 华安县| 南溪县| 青龙| 桃园市|