C++问题 从1到10000之间的数

#include<stdio.h>
#include<math.h>
int main(void)
{
int i,m,n;
int sum;
sum=0;
for(i=1;i<=10000;i++){
do{
m=i%10;
n=i/10;
sum=sum+pow(m,3);
m=n;
}while(i!=0);
if(sum==i){
printf("%f\n",sum);
}
}
return 0;
}
这个为什么输不出结果

第1个回答  2013-10-15
我看不懂你想干什么 但是 你的程序进入死循环了 一直在do里面出不来 只有当i==0时才会跳出这个循环 所以程序执行不到printf这个语句 也就不会有输出
第2个回答  2013-10-15
当i=1的时候应该能输出 1,后面就没了追问

为什么啊?应该怎么改改?

第3个回答  2013-10-15
while(i!=0)

死循环本回答被提问者采纳
相似回答
大家正在搜