不懂for循环里面的内容(尤其是while里面的
k*=m%10;
s+= m%10;
)
#include<stdio.h>
int main()
{int n,k=1;
int s=0,m ;
for(n=1;n<=100;n++)
{
k=1;s=0;m=n ;
while(m)
{
k*=m%10;
s+= m%10;
m/=10 ;
}
if(k>s) printf("%d\n",n);
}
return 0;
}
不懂for循环里面的内容(尤其是while里面的
k*=m%10;
s+= m%10;
)
#include<stdio.h>
int main()
{int n,k=1;
int s=0,m ;
for(n=1;n<=100;n++)
{
k=1;s=0;m=n ;
while(m)
{
k*=m%10;
s+= m%10;
m/=10 ;
}
if(k>s) printf("%d\n",n);
}
return 0;
}
m%10是取数值的个位数
k和s分别乘以和加上m的个位数
m/=10是m除以10取整,就是去掉个位数,并且十位变成个位。
下次循环再次k和s分别乘以和加上m的个位数。
直到m为0就不再循环了。