gpt4 book ai didi

c - 打印数字列表,用 3,5 的倍数以及 3and5 C 替换数字

转载 作者:太空宇宙 更新时间:2023-11-04 00:18:35 25 4
gpt4 key购买 nike

我上周的期中考试是“用 C 编程”,最后一个问题是编写一个程序来打印 1 - 100 的数字列表,但每个 3 的倍数打印 fizz,5 的倍数 buzz,以及 3 和的倍数5 打印 fizzbuzz。刚拿到我的成绩,我得到了 76%,我确信我做对了所有其他问题,所以我的代码中一定有错误。我想弄清楚(不记得我在纸上写了什么)我的问题是我基本上可以正常工作,但它也在打印数字,数字应该用单词代替。这是我到目前为止的代码。

#include <stdio.h>

int main (void)
{
int x,y;
printf("this should count from 1 to 100, and instead of printing the multiples of 3 or 5 or 3 and 5 it should print words\n");
for (x=1; x<=100; x++)
{
if (x%3==0)
{
printf("fizz\n");
}
if (x%5==0)
{
printf("buzz\n");
}
if (x%3==0 && x%5==0)
{
printf("FizzBuzz\n");
}
printf("%d\n",x);
}
return 0;
}

我实际上并没有“重新参加”考试或类似的事情,所以我不是想作弊,我只是对我需要在这里做什么感到困惑。我得到的输出是

1
2
fizz
3
4
buzz
5
fizz
6
7
8
fizz
9
buzz
10
11
fizz
12
13
14
fizz
buzz
FizzBuzz
15
16

它应该看起来像这样:

1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz

最佳答案

你的条件是错误的。它们应该是:

if (x%3==0 && x%5==0)
{
printf("FizzBuzz\n");
}
else if (x%3==0)
{
printf("fizz\n");
}
else if (x%5==0)
{
printf("buzz\n");
}
else
{
printf("%d\n",x);
}

记住,FizzBu​​zz 如果两者都可以被 3 5 整除,如果数字是 Fizz可被 3 整除,如果数字可被 5 整除,则 Buzz

关于c - 打印数字列表,用 3,5 的倍数以及 3and5 C 替换数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19557262/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com