📜  C |回路和控制结构|问题13(1)

📅  最后修改于: 2023-12-03 14:39:40.086000             🧑  作者: Mango

C语言中回路和控制结构问题13

问题描述

编写程序,输入一个数字 n (n<=100),输出该数的因子个数,以及这些因子。

示例

输入: 12

输出:

12的因子个数为:6
12的因子为: 1 2 3 4 6 12
解题思路

对于给定的数字 n,我们可以使用一个循环从 1 到 n 依次遍历每个数字,如果 n 能被当前遍历的数字整除,则说明当前数字是 n 的一个因子。同时,我们需要记录下 n 的因子个数以及所有的因子,方便输出。

解题步骤
  1. 定义变量 n、count 和 i,n 用于存储输入的数字,count 用于记录因子个数,i 用于循环遍历。
  2. 使用循环从 1 到 n 遍历每个数字。
  3. 判断当前数字是否是 n 的因子,如果是,则将其输出,并将 count 加 1。
  4. 循环结束后,输出因子个数和所有的因子。
参考代码
#include <stdio.h>

int main() {
    int n, i, count = 0;
    
    printf("Enter a number: ");
    scanf("%d", &n);
    
    printf("%d的因子为: ", n);
    for (i = 1; i <= n; i++) {
        if (n % i == 0) {
            printf("%d ", i);
            count++;
        }
    }
    
    printf("\n%d的因子个数为: %d", n, count);
    
    return 0;
}
总结

掌握循环和条件语句是编写 C 语言程序的基础,本题主要考察了循环的使用。在解决问题时,我们应该首先分析问题,明确解决思路,然后再考虑具体实现。