|
发表于 2023-12-7 16:54:33
|
显示全部楼层
好的,我们可以使用循环来遍历1到9999中的所有数字,然后判断每个数字是否满足条件。具体的实现代码如下:
- #include <stdio.h>
- int main() {
- for (int i = 1; i <= 9999; i++) {
- // 判断数字是否能被7整除
- if (i % 7 == 0) {
- // 将数字转换为字符串,方便判断是否包含数字5
- char str[10];
- sprintf(str, "%d", i);
-
- // 判断数字是否包含数字5
- int containsFive = 0;
- for (int j = 0; str[j] != '\0'; j++) {
- if (str[j] == '5') {
- containsFive = 1;
- break;
- }
- }
-
- // 输出满足条件的数字
- if (containsFive) {
- printf("%d\n", i);
- }
- }
- }
-
- return 0;
- }
复制代码
上述代码的思路是从1到9999逐个判断,首先判断数字能否被7整除,然后将该数字转换成字符串,并判断字符串中是否包含数字5。如果满足这两个条件,则输出该数字。运行该代码,即可得到输出结果。
需要注意的是,该代码中使用了sprintf函数将数字转换为字符串,所以需要包含stdio.h头文件。另外,输出的结果可能比较多,如果想要限制输出的范围,可以调整for循环中的起始值和结束值。
以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。 |
|