zoukankan      html  css  js  c++  java
  • 习题5-6 使用函数输出水仙花数

     1 #include <stdio.h>
     2 int narcissistic(int number);
     3 void PrintN(int m, int n);
     4 
     5 int main()
     6 {
     7     int m, n;
     8 
     9     scanf_s("%d %d", &m, &n);
    10     if (narcissistic(m)) printf("%d is a narcissistic number
    ", m);
    11     PrintN(m, n);
    12     if (narcissistic(n)) printf("%d is a narcissistic number
    ", n);
    13 
    14     return 0;
    15 }
    16 
    17 int narcissistic(int number)
    18 {
    19     int x;                //x分离出的每位数字
    20     int count = 0;        //count统计数的位数
    21     int temp;            //等于number的临时变量
    22     int sum = 0;        //每个数字的幂之和
    23     int pow;        //
    24     temp = number;
    25 
    26     do
    27     {
    28         count++;
    29         temp = temp / 10;
    30     } while (temp!=0);
    31 
    32     temp = number;
    33     for (int i = 0; i < count; i++)
    34     {
    35         x = temp % 10;
    36 
    37         pow = 1;
    38 
    39         for (int j = 1; j <= count; j++)
    40         {
    41             pow = pow * x;
    42         }
    43 
    44         sum = sum + pow;
    45 
    46         temp = temp / 10;
    47     }
    48     if (sum == number)
    49     {
    50         return 1;
    51     }        
    52     else
    53     {
    54         return 0;
    55     }    
    56 }
    57 void PrintN(int m, int n)
    58 {
    59     for (int i = m + 1; i < n; i++)
    60     {
    61         if (narcissistic(i))
    62         {
    63             printf("%d
    ", i);
    64         }
    65     }
    66 }
  • 相关阅读:
    线程间的通信 与 线程池
    线程同步
    静态代理模式
    多线程状态
    线程、进程、多线程
    Java面向对象之泛型
    ConstraintLayout 用法
    搞NDK开发
    Linux基础命令【记录】
    c# 的一些基本操作或属性
  • 原文地址:https://www.cnblogs.com/2018jason/p/10929658.html
Copyright © 2011-2022 走看看