C语言实现水仙花数与99乘法表

简介: C语言实现水仙花数与99乘法表

1. 水仙花数的实现

在数学中,水仙花数是指一个三位数,其各位数字立方和等于该数本身。下面的C语言代码用于寻找1000以内的所有水仙花数。

#include <stdio.h>

int main() {
    // 寻找1000以内的水仙花数
    int limit = 1000;
    
    for (int num = 1; num < limit; ++num) {
        // 分离出百位、十位和个位数字
        int hundreds = num / 100; // 百位
        int tens = (num / 10) % 10; // 十位
        int units = num % 10; // 个位
        
        // 判断是否为水仙花数:各个位数立方和等于原数
        if (hundreds * hundreds * hundreds + tens * tens * tens + units * units * units == num) {
            printf("%d 是水仙花数 \n", num);
        }
    }

    // 下一节:99乘法表的实现...
    return 1;
}

这段代码首先定义了一个变量 limit 作为查找范围(本例中为1000),然后通过循环遍历1到限制值之间的每个数。对于每个数,通过除法和取模运算分离出它的百位、十位和个位数字,并计算它们各自的立方和,如果这个立方和等于原始数值,则输出该数是水仙花数。

2. 99乘法表的实现

99乘法表展示了从1到9的所有两两相乘的结果。以下C语言代码实现了这一功能:

// 继续上面的main函数...

    // 输出99乘法表
    printf("\n\n-- 99乘法表 --\n");
    for (int i = 1; i <= 9; ++i) {
        for (int j = 1; j <= i; ++j) {
            printf("%d * %d = %2d ", i, j, i * j);
        }
        printf("\n"); // 每一行结束后换行
    }

    return 1;
}

这段代码使用嵌套循环生成乘法表。外层循环变量 i 控制列数,内层循环变量 j 控制行数。每次迭代时,根据当前的 ij 计算并输出乘积,当完成一行的打印后,通过 printf("\n") 进行换行。最终输出的结果即为完整的99乘法表。

目录
相关文章
|
2月前
|
C语言
C语言---自幂数(“水仙花数”)
C语言---自幂数(“水仙花数”)
52 0
|
2月前
|
算法 C语言
C语言 0~10000 水仙花数 判断。
C语言 0~10000 水仙花数 判断。
25 0
|
9天前
|
C语言
C语言---函数---请输入乘法口诀表的行,来打印几几乘法表
C语言---函数---请输入乘法口诀表的行,来打印几几乘法表
10 1
|
5天前
|
存储 C语言 C++
【C语言刷题系列】水仙花数的打印及进阶
【C语言刷题系列】水仙花数的打印及进阶
|
25天前
|
C语言
C语言探索:水仙花数的奥秘与计算
C语言探索:水仙花数的奥秘与计算
10 0
|
2月前
|
C语言
【C语言必刷题】6. 水仙花数
【C语言必刷题】6. 水仙花数
|
2月前
|
C语言
C语言之九九乘法表||素数||最小公倍数
C语言之九九乘法表||素数||最小公倍数
28 0
|
2月前
|
C语言
【C语言必刷题】2. 9*9乘法表
【C语言必刷题】2. 9*9乘法表
|
2月前
|
机器学习/深度学习 存储 C语言
用C语言轻松找出所有水仙花数
用C语言轻松找出所有水仙花数
用C语言轻松找出所有水仙花数
|
2月前
|
C语言 数据安全/隐私保护
利用C语言揭秘水仙花
利用C语言揭秘水仙花
39 0