编写一个C语言程序,使用 for 循环检查一个数字是否为氖数。如果一个数字等于其平方的数字之和,则它是一个氖数。
- 我们使用 math pow 函数来计算数字的平方。
- 将输出的平方值分解为单个数字,并计算它们的总和。
- 使用 if else 语句检查平方的数字之和是否等于原始数字。如果为真,则该数字是氖数。
#include <stdio.h>
#include<math.h>
int main()
{
int Number, squr, rem, Sum;
printf("Enter Number to Check = ");
scanf("%d", &Number);
squr = pow(Number, 2);
for (Sum = 0; squr > 0; squr = squr / 10)
{
rem = squr % 10;
Sum = Sum + rem;
}
if (Number == Sum)
printf("\n%d is a Neon Number.\n", Number);
else
printf("\n%d is not.\n", Number);
}

这个C语言程序使用 while 循环检查给定的数字是否为氖数。
#include <stdio.h>
#include<math.h>
int main()
{
int Number, squr, rem, Sum = 0;
printf("Enter Number to Check = ");
scanf("%d", &Number);
squr = pow(Number, 2);
printf("The Square of a Number %d = %d\n", Number, squr);
while(squr > 0)
{
rem = squr % 10;
Sum = Sum + rem;
squr = squr / 10;
}
printf("The Sum of Digits in a Square = %d\n", Sum);
if (Number == Sum)
printf("\n%d is a Neon Number.\n", Number);
else
printf("\n%d is not.\n", Number);
}
Enter Number to Check = 9
The Square of a Number 9 = 81
The Sum of Digits in a Square = 9
9 is a Neon Number.
在这个检查氖数 示例 中,squareDigitsSum 递归函数通过递归调用来分解并计算总和。
#include <stdio.h>
#include<math.h>
int squareDigitsSum(int num)
{
static int rem, sum = 0;
if(num > 0)
{
rem = num % 10;
sum = sum + rem;
squareDigitsSum(num / 10);
}
return sum;
}
int main()
{
int Number;
printf("Enter Number to Check = ");
scanf("%d", &Number);
int squr = pow(Number, 2);
int Sum = squareDigitsSum(squr);
printf("The Square of %d Number = %d\n", Number, squr);
printf("The Sum of Digits in %d = %d\n", squr, Sum);
if (Number == Sum)
printf("\n%d is a Neon Number.\n", Number);
else
printf("\n%d is not.\n", Number);
}
Enter Number to Check = 5
The Square of 5 Number = 25
The Sum of Digits in 25 = 7
5 is not.