412. Fizz Buzz(Fizz Buzz)

题目描述

给你一个整数 n ,找出从 1 到 n 各个整数的 Fizz Buzz 表示,并用字符串数组 answer(下标从 1 开始)返回结果,其中:

复制代码
answer[i] == "FizzBuzz" 如果 i 同时是 3 和 5 的倍数。
answer[i] == "Fizz" 如果 i 是 3 的倍数。
answer[i] == "Buzz" 如果 i 是 5 的倍数。
answer[i] == i (以字符串形式)如果上述条件全不满足。

问题分析

按照题目描述进行求解即可

代码

c 复制代码
char * num_to_str(int n){
    int count = 0;
    int num = n;
    while(num!=0){
        num/=10;
        count++;
    }
    char *x = (char *)malloc(sizeof(char)*(count+1));
    x[count] = '\0';
    count--;
    while(count>=0){
        x[count] = n%10+'0';
        n/=10;
        count--;
    }
    return x;
}
char** fizzBuzz(int n, int* returnSize) {
    char ** str = (char **)malloc(sizeof(char *)*(n));
    char answer1[] = "FizzBuzz";
    char answer2[] = "Fizz";
    char answer3[] = "Buzz";
    for(int i=1; i<=n; i++){
        if(i%3==0&&i%5==0){
            str[i-1] = (char *)malloc(sizeof(char)*(9));
            strcpy(str[i-1], answer1);
        }else if(i%3==0){
            str[i-1] = (char *)malloc(sizeof(char)*(5));
            strcpy(str[i-1], answer2);
        }else if(i%5==0){
            str[i-1] = (char *)malloc(sizeof(char)*(5));
            strcpy(str[i-1], answer3);
        }else{
            str[i-1] = num_to_str(i);
        }
    }
    *returnSize = n; 
    return str;
}

提交结果截图

相关推荐
噜噜噜噜鲁先森几秒前
MVDR源码(可直接运行)
算法·matlab·信号处理·阵列信号处理·声源定位算法
felix_fang_xin12 分钟前
FIR数字滤波器设计与实现
人工智能·算法
C++chaofan20 分钟前
P2670 [NOIP 2015 普及组] 扫雷游戏
数据结构·游戏·图论
一匹电信狗22 分钟前
【数据结构】队列的完整实现
c语言·数据结构·c++·算法·leetcode·排序算法·visual studio
烨然若神人~31 分钟前
算法第24天|93.复原IP地址、 78.子集、 90.子集II
java·开发语言·算法
Da_秀1 小时前
信奥赛CSP动态规划入门-最小硬币问题
数据结构·c++·笔记·算法·动态规划
士别三日&&当刮目相看1 小时前
数据结构*排序
数据结构·排序算法
snowfoootball1 小时前
牛客周赛 Round 93题解(个人向A-E)
算法·贪心算法·排序算法
2401_896008194 小时前
GCC 使用说明
前端·javascript·算法
1白天的黑夜15 小时前
动态规划-LCR 089.打家劫舍-力扣(LeetCode)
c++·算法·leetcode·动态规划