wangran51 于 2009-10-12 20:29:55发表:
5# alick 精辟!!!!!!拜服
alick 于 2009-10-06 09:16:52发表:
while(m) {k*=m%10;s+=m%10; m/=10; } ----关键是这个循环,k存各位数字之积,s存之和。 m%10取出m的个位数字,m/10取出除个位外前面的数字。 注意m是整数,%和/都是整数运算就是了。
wangran51 于 2009-10-06 09:00:31发表:
3# zha2530 冲掉是肯定啊,我就是不太理解怎么能实现出来 每位数的成绩大于每位数和打得数
zha2530 于 2009-10-05 13:35:46发表:
int main() { int n,k,s,m; for (n=1; n<=100; n++) { k=1; s=0; m=n; while(m) { k *= m % 10; s += m % 10; m /= 10; } -------------- for循环里面的k = 1;s = 0; 导致没有任何输出,在每次进for之后,k,s前面的值都会被冲掉
suowenair 于 2009-10-05 12:38:02发表:
[i=s] 本帖最后由 suowenair 于 2009-10-5 12:52 编辑 [/i]顶
wangran51 于 2009-10-12 20:29:55发表:
5# alick
精辟!!!!!!拜服
alick 于 2009-10-06 09:16:52发表:
while(m)
{k*=m%10;s+=m%10;
m/=10;
}
----关键是这个循环,k存各位数字之积,s存之和。
m%10取出m的个位数字,m/10取出除个位外前面的数字。
注意m是整数,%和/都是整数运算就是了。
wangran51 于 2009-10-06 09:00:31发表:
3# zha2530
冲掉是肯定啊,我就是不太理解怎么能实现出来 每位数的成绩大于每位数和打得数
zha2530 于 2009-10-05 13:35:46发表:
int main()
{
int n,k,s,m;
for (n=1; n<=100; n++)
{
k=1;
s=0;
m=n;
while(m)
{
k *= m % 10;
s += m % 10;
m /= 10;
}
--------------
for循环里面的k = 1;s = 0; 导致没有任何输出,在每次进for之后,k,s前面的值都会被冲掉
suowenair 于 2009-10-05 12:38:02发表:
[i=s] 本帖最后由 suowenair 于 2009-10-5 12:52 编辑 [/i]
顶