digits.cpp

来自「C++&datastructure书籍源码,以前外教提供现在与大家共享」· C++ 代码 · 共 54 行

CPP
54
字号
#include <iostream>#include <string>using namespace std;// illustrates loops, convert a number to a string of English digits// i.e., 1346 -> one three four six// Owen Astrachan, 6/8/95string DigitToString(int num);string StringOut(long int number);int main(){    long number;        cout << "enter an integer: ";    cin >> number;    cout << StringOut(number) << endl;        return 0;}string DigitToString(int num)// precondition: 0 <= num < 10// postcondition: returns english equivalent, e.g., 1->one,...9->nine     {    if (0 == num)       return "zero";    else if (1 == num)  return "one";    else if (2 == num)  return "two";    else if (3 == num)  return "three";    else if (4 == num)  return "four";    else if (5 == num)  return "five";    else if (6 == num)  return "six";    else if (7 == num)  return "seven";    else if (8 == num)  return "eight";    else if (9 == num)  return "nine";    else return "?";}string StringOut(long number)// precondition: 0 < number// postcondition: returns string formed from digits written in English     //                e.g., 123 -> "one two three"{    string s = "";    int digit;    while (number != 0)    {   digit = number % 10;        s = DigitToString(digit) + " " + s;        number /= 10;    }    return s;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?