查找给定数字的因数

CCBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,我们将创建一个 C 程序来查找给定数字的因数。

注意:你需要自己创建文件 ~/project/main.c,以便练习编码并学习如何使用 gcc 编译和运行它。

cd ~/project
## 创建 main.c
touch main.c
## 编译 main.c
gcc main.c -o main
## 运行 main
./main

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL c(("C")) -.-> c/BasicsGroup(["Basics"]) c(("C")) -.-> c/ControlFlowGroup(["Control Flow"]) c(("C")) -.-> c/UserInteractionGroup(["User Interaction"]) c/BasicsGroup -.-> c/variables("Variables") c/ControlFlowGroup -.-> c/if_else("If...Else") c/ControlFlowGroup -.-> c/for_loop("For Loop") c/UserInteractionGroup -.-> c/user_input("User Input") c/UserInteractionGroup -.-> c/output("Output") subgraph Lab Skills c/variables -.-> lab-123244{{"查找给定数字的因数"}} c/if_else -.-> lab-123244{{"查找给定数字的因数"}} c/for_loop -.-> lab-123244{{"查找给定数字的因数"}} c/user_input -.-> lab-123244{{"查找给定数字的因数"}} c/output -.-> lab-123244{{"查找给定数字的因数"}} end

获取用户输入

首先,我们将从用户那里获取一个整数输入。这个整数将用于查找该数字的因数。

#include <stdio.h>

int main()
{
    int num;
    printf("Enter an integer: ");
    scanf("%d", &num);
    // code to find factors
    return 0;
}

查找因数

接下来,我们将编写一个循环来查找数字的因数。因数是指能够整除给定数字且没有余数的数字。为了找到一个数字的因数,我们将从 1 迭代到(数字 / 2),并检查当前数字是否能整除给定数字。如果可以,我们将当前数字打印为给定数字的因数。

#include <stdio.h>

int main()
{
    int num, i;
    printf("Enter an integer: ");
    scanf("%d", &num);
    printf("Factors of %d are: ", num);
    for(i = 1; i <= num/2; i++)
    {
        if(num % i == 0)
        {
            printf("%d ", i);
        }
    }
    printf("%d", num);
    return 0;
}

测试程序

现在我们将编译并运行我们的程序,以测试它是否正常工作。我们将执行程序并输入一个整数。程序应该找到并打印给定数字的所有因数。

完整代码

以下是程序的完整代码:

#include <stdio.h>

int main()
{
    int num, i;
    printf("Enter an integer: ");
    scanf("%d", &num);
    printf("Factors of %d are: ", num);
    for(i = 1; i <= num/2; i++)
    {
        if(num % i == 0)
        {
            printf("%d ", i);
        }
    }
    printf("%d", num);
    return 0;
}

总结

在本实验中,我们创建了一个 C 程序来查找给定数字的因数。我们学习了如何使用循环和条件语句编写算法来查找数字的因数。我们还测试了程序,以确保它能够生成正确的输出。