CIJUNBUGUILU 发表于 2024-9-24 11:36:39

C语言循环如果遇到特定数字,如何跳到下次循环

本帖最后由 CIJUNBUGUILU 于 2024-9-26 21:24 编辑

需要跳过任何含有7(如71,57等含有7的数字)及其倍数(需要用到continue;和break;)

FishC 发表于 2024-9-24 11:36:50

要在C语言的循环中跳过含有数字7或是7的倍数,可以结合`continue`语句来实现。`continue`语句会跳过当前的循环迭代,直接进入下一次循环。以下是一个示例:

#include <stdio.h>

int hasSeven(int num) {
    while (num > 0) {
      if (num % 10 == 7)
            return 1;// 有数字7
      num /= 10;
    }
    return 0;// 没有数字7
}

int main() {
    for (int i = 1; i <= 100; i++) {// 示例循环从1到100
      if (i % 7 == 0 || hasSeven(i)) {
            continue;// 跳过当前的循环迭代
      }
      printf("%d\n", i);// 打印不被跳过的数字
    }
    return 0;
}

在这个例子中:
1. `hasSeven`函数会检查一个数字是否包含数字7。
2. 在`for`循环中,我们使用`if`语句来检查当前数字`i`是否是7的倍数或者包含数字7。
3. 如果满足条件,则使用`continue`语句跳过该次循环。

这样,每次循环如果遇到满足条件的数字,就会跳过,直接进入下一次迭代。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: C语言循环如果遇到特定数字,如何跳到下次循环