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;
}

提交结果截图

相关推荐
fie88891 小时前
NSCT(非下采样轮廓波变换)的分解和重建程序
算法
晨晖22 小时前
单链表逆转,c语言
c语言·数据结构·算法
im_AMBER4 小时前
Leetcode 78 识别数组中的最大异常值 | 镜像对之间最小绝对距离
笔记·学习·算法·leetcode
鼾声鼾语4 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab
其美杰布-富贵-李4 小时前
HDF5文件学习笔记
数据结构·笔记·学习
LYFlied4 小时前
【每日算法】LeetCode 25. K 个一组翻转链表
算法·leetcode·链表
Swizard4 小时前
别再迷信“准确率”了!一文读懂 AI 图像分割的黄金标尺 —— Dice 系数
python·算法·训练
s09071364 小时前
紧凑型3D成像声纳实现路径
算法·3d·声呐·前视多波束
可爱的小小小狼5 小时前
算法:二叉树遍历
算法
d111111111d6 小时前
在STM32函数指针是什么,怎么使用还有典型应用场景。
笔记·stm32·单片机·嵌入式硬件·学习·算法