9、Fizz Buzz 问题

描述

给你一个整数n. 从 1 到 n 按照下面的规则打印每个数:

  • 如果这个数被3整除,打印fizz.
  • 如果这个数被5整除,打印buzz.
  • 如果这个数能同时被3和5整除,打印fizz buzz.

样例

比如 n = 15, 返回一个字符串数组:

挑战

Can you do it with only one if statement?

代码实现:

class Solution {
public:
    /**
     * @param n: An integer
     * @return: A list of strings.
     */
    vector<string> fizzBuzz(int n) 
    {
        vector<string> C;   //定义一个动态数组
        for(int i = 1;i<=n;i++)
        {
            if(i%3==0 && i%5==0)
            {
                C.push_back("fizz buzz");
            }
            else if (i%3==0 && i%5!=0)
            {
                C.push_back("fizz");
            }
            else if(i%3!=0 && i%5==0)
            {
                C.push_back("buzz");
            }
            else
            {
                C.push_back(to_string(i));  //此处使用标准库中的to_string()函数,将int类型转换成string类型
            }
        }
        return C;
    }
};

代码分析:

  • 定义动态数组C;
  • 使用push_back()函数在数组最后插入元素;
  • 使用标准库中的to_string()函数,将int类型转换成string类型;

猜你喜欢

转载自blog.csdn.net/gaoyu1253401563/article/details/83514968