每日一题(四):Fizz Buzz 经典问题

发布于:2025-02-10 ⋅ 阅读:(30) ⋅ 点赞:(0)

目录

 一、题目

 二、题目分析

(一)明确需求

(二)分析思路

三、将思路转换为程序

C++代码 

 C代码

 注释:

四、总结


 一、题目

Fizz Buzz经典问题

给定一个整数N.如果这个数被 3 整除,返回 Fizz;如果这个数被 5 整除,返回 Buzz;如果这个数能同时被 3 和 5 整除,返回 FizzBuzz;如果这个数既不能被 3 也不能被 5 整除,返回这个数字。

输入描述:

输入一行,表示要进行判断的数字。

输出描述:

输出一行,表示判断后的结果。

Fizz Buzz是一个经典的编程问题,通常用于面试或编程练习中,主要用于测试逻辑能力和对基本算法的理解。其常见形式除了对输入数据进行判断外,还能对从1到100这种指定范围的数据进行判断。(本质区别便是有无输入项)

 二、题目分析

(一)明确需求

本题,需要我们对一个输入的数据进行Fizz Buzz判断,所以我们需要设置一个变量来接收输入数据,然后再通过“能否被5整除”、“能否被3整除”的条件判断,输出相应的结果。

(二)分析思路

我们可以通过双层嵌套条件判断减少所需要写的代码数量,“能否被5整除”所对应的条件便是“除5的余数是否为0”;“能否被3整除”所对应的条件便是“除3的余数是否为0”。(具体详见代码部分)

三、将思路转换为程序

C++代码 

#include <iostream>
using namespace std;
int main()
{
	int num;
	cin >> num;
	if (num % 3 == 0)
	{
		if (num % 5 == 0)
		{
			cout << "FizzBuzz";
		}
		else
		{
			cout << "Fizz";
		}
	}
	else
	{
		if (num % 5 == 0)
		{
			cout << "Buzz";
		}
		else
		{
			cout << num;
		}
	}
	return 0;
}

 C代码

#include <stdio.h>
int main()
{
	int num;
	scanf("%s", num);
	if (num % 3 == 0)
	{
		if (num % 5 == 0)
		{
			printf("FizzBuzz");
		}
		else
		{
			printf("Fizz");
		}
	}
	else
	{
		if (num % 5 == 0)
		{
			printf("Buzz");
		}
		else
		{
			printf("%d", num);
		}
	}
	return 0;
}

 注释:

代码当中外层和内层条件可以任意调换位置,但是相应输出结果也需要更换位置。

四、总结

今天的题目是一个相对简单的基础选择算法题,代码形式有很多种,重在缕清思维。

每日一题,让今天的自己变成更好的自己!

如果觉得博主写得不错就点点赞和收藏吧!如果期待博主的下一篇博客就给博主点一个关注吧!

如果有问题可以随时斧正,如果有疑惑可以随时讨论。


网站公告

今日签到

点亮在社区的每一天
去签到