永发信息网

C++求1000的阶乘的问题?

答案:4  悬赏:80  手机版
解决时间 2021-03-10 12:24
  • 提问者网友:相思似海深
  • 2021-03-09 22:35
定义一个容量为3000的数组str存放阶乘每一位数字,令数组最后一位数值为1,其余位为0…………在最后输出数组的时候:
for(i=0;i<3000;i++)
{
if( str[ i ] != 0 | count==1)
cout<<str[ i ];
count=1;
}
这三行是什么意思?求大神指点
最佳答案
  • 五星知识达人网友:西岸风
  • 2021-03-09 22:54
数组有可能填不满,这样数组里前面的0就不用输入出来。

比如数组里0000。。。。00000000000399999999这个数,只打印399999999
全部回答
  • 1楼网友:神的生死簿
  • 2021-03-10 02:02
从第一个非零位开始输出。 少了一个大括号,应该是 if( str[ i ] != 0 | count==1) { cout<<str[ i ]; count=1;}
  • 2楼网友:时间的尘埃
  • 2021-03-10 01:50
的确有问题,好像你只算了n*(n-1)的结果。要循环。 for(;n>2;n++) {m=n*jc(n-1); } return m; 你可以把它放到一个循环体中,或者把k=jc(c)放到循环体中,循环条件为n>2
  • 3楼网友:骨子里都是戏
  • 2021-03-10 00:30
大数的乘法,还是有点麻烦的 你需要编写一个个位数和大数的乘法,多位数和大数的乘法可以错位相加得到结果 这里就需要一个大数的加法函数,这个也不难 最好用char型
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯