对于每一个四位数,将其四个数字相乘,然后再将所有得到的乘积相加,最后的和为多少?

如题所述

假设是每个不同数组成的四位数,有0的乘积都是0.没有0的可以这样组成:(1234),(1235),(1236)(1237)(1238)(1239)
(2345)(2346)(2347)(2348)(2349)
(3456)(3457)(3458)(3459)
(4567)(4568)(4569)
(5678)(5679)
(6789)
括号里每组四个数可组成4*3*2*1=24个四位数
上面各个括号4个数成积和:
[(24+30+36+42+48+54)+(120+144+168+192+216)+(360+420+480+540)+(840+960+1080)+(1680+1890)+3024]=194+840+1800+2880+3570+3024=12308
题目所求最后的和=12308*24=295392
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-17
#include<stdio.h>
main()
{ int i=0;
long sum=0,k=0;
for(i=1000;i<10000;i++)
{
k=(i/1000)*((i%1000)/100)*((i%100)/10)*(i%10);
sum=sum+k;
}
printf("sum=%ld\n",sum);}

运行结果:4100625本回答被提问者采纳