因此,我编写了一个程序来检查一个数字是否是阿姆斯特朗。它接受输入但没有给出任何答案。控制台甚至没有说“按回车键继续”,而是得到......
因此,我编写了一个程序来检查一个数字是否是阿姆斯特朗。它接受输入但没有给出任何答案。控制台甚至没有说“按回车键继续”,而是卡在了不确定的状态。这是代码:
#include <stdio.h>
int main()
{
//to check whether a number is armstrong or not
int input_1,digit,new_num=0,power_digit=1,new_input_1,new_input_2;
printf("please enter the number: \n");
scanf("%d",&input_1);
new_input_1=input_1;
new_input_2=input_1;
for(input_1;input_1>0;input_1=input_1/10)
{
digit=input_1%10;
for(new_input_1=new_input_2;new_input_1>0;new_input_1/10)
{
power_digit=power_digit*digit;
}
new_num=new_num+power_digit;
}
if(new_num==input_1)
{
printf("the number is armstrong\n");
}
else
{
printf("the number is not an armstrong\n");
}
return 0;
}
我之前的版本可以工作,但给出了错误的答案。这是我的第二次尝试,但我找不到我的错误。k