输入一个自然数n求n! ,同时统计结果中有多少个0 求源代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1)做一个循环,每步乘i就可以做出阶乘来。2)把结果转化成字符串。3)在字符串里查找0,找到后,把这个以前的从字符串中删除。4)继续查找,加上一个变量,找到一个加1。5)如果没有了,就ok了, #include<stdio.h> unsigned ling mul(int n); int main() { int m; puts("Calculate n! n=?\n"); scanf("%d", &m); printf("%d!=%ld\n", m, mul(m)); getch(); retun 0; } unsigned long mul(int n) { unsigned long p; if(n>1) p=n*mul(n-1); else p=1L; return(p); } 求n的阶乘转成10进制表示,末尾有多少个0的代码http://www.cnblogs.com/panic/archive/2005/02/23/108008.html 觉觉ing,我要求的是结果里的所有0,而不是末尾的0,谢谢参与 就怕n的数值过大,导致n!超过long型的表示范围。 搜索一下 大数阶乘算法直接计算出来再数0的个数吧比如:http://dev.csdn.net/article/28/28584.shtm int s=1,t=0,f=0;int p=0;f=fac(10);CString buffer;sprintf(buffer,"%d",f);pDC->TextOut(100,100,buffer);for (int n=0;n<=stlen(buffer);n++){if (buffer.Mid(i,1)==0) { p++; }}在调用函数int fac(int n){ for (int i=0;i<n;i++) { s=s*i; t=t+s; }return t;} 进度条引起刷屏的问题 VC中用MS的DataGrid控件,发布时需要附带哪些文件啊?我已经附带了MSDATGRD.OCX,在没有VC的机器上还是显示不出来。 急求《COM技术内幕》随书光盘里的全部资料! vc中导入导出excel 如何处理呢 c++里是否有方法指针? 关于编译器 Cannot open include file: 'Encrypt.h' 动态创建的CBitmapButton 按钮为什么不能显示 在两个对话框之间如何传递消息? 执行WinExec()的问题 简单问题,如何改变sdk窗口的背景颜色。
2)把结果转化成字符串。
3)在字符串里查找0,找到后,把这个以前的从字符串中删除。
4)继续查找,加上一个变量,找到一个加1。
5)如果没有了,就ok了,
unsigned ling mul(int n);
int main()
{
int m;
puts("Calculate n! n=?\n");
scanf("%d", &m);
printf("%d!=%ld\n", m, mul(m));
getch();
retun 0;
}
unsigned long mul(int n)
{
unsigned long p;
if(n>1)
p=n*mul(n-1);
else
p=1L;
return(p);
}
http://www.cnblogs.com/panic/archive/2005/02/23/108008.html
比如:
http://dev.csdn.net/article/28/28584.shtm
int p=0;
f=fac(10);
CString buffer;
sprintf(buffer,"%d",f);
pDC->TextOut(100,100,buffer);
for (int n=0;n<=stlen(buffer);n++)
{
if (buffer.Mid(i,1)==0)
{
p++;
}
}
在调用函数
int fac(int n)
{
for (int i=0;i<n;i++)
{
s=s*i;
t=t+s;
}
return t;
}