大数据:fac
来源:互联网 发布:淘宝宝登陆 编辑:程序博客网 时间:2024/05/19 13:18
#include <stdio.h>#include <string.h>#include <stdlib.h>void mul(char *a,char *b,char *c){int i;int j;int ca;int cb;int *s;ca=strlen(a);cb=strlen(b);s=(int*)malloc(sizeof(int)*(ca+cb));for(i=0;i<ca+cb;i++)//对结果各位赋值为0 s[i]=0;/*for(i=0;i<ca;i++) for(j=0;j<cb;j++) s[i+j+1]+=(a[i]-'0')*(b[j]-'0');*/for(i=ca-1;i>=0;i--) //不考虑进位,进行乘法计算 for(j=cb-1;j>=0;j--) s[i+j+1]+=(a[i]-'0')*(b[j]-'0');for(i=ca+cb-1;i>=0;i--)//处理各位的进位 if(s[i]>=10) { s[i-1]+=s[i]/10; s[i]%=10; }//////////////////////i=0;while(s[i]==0) //处理前导零的情况 i++;///////////////for(j=0;i<ca+cb;j++,i++)//计算最终结果 { c[j]=s[i]+'0'; //printf("%c",c[j]); }c[j]='\0';free(s);}int main(){char str1[3000];char str2[3000];char str3[3000];int n,i;memset(str1,0,sizeof(str1));memset(str2,0,sizeof(str2));memset(str3,0,sizeof(str3));printf("请输入一个数:\n");scanf("%d",&n);sprintf(str2,"%d",1);for(i=2;i<=n;i++) { sprintf(str1,"%d",i); mul(str1,str2,str3); strcpy(str2,str3); }for(i=0;i<strlen(str3);i++) printf("%c",str3[i]);printf("len=%d\n",strlen(str3)); return 0;}
0 0
- 大数据:fac
- fac method
- bzoj1308: fac
- fac()阶乘函数的写法
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 大数据
- 基类与派生类的转换
- HTML5之音频功能
- Innodb_io_capacity 对于IO稳定性的一些研究
- An internal error occurred during: "Launching WebMonitor on MyEclipse Tomcat "
- VLC播放RTSP视频延迟问题
- 大数据:fac
- 蘑菇街架构
- ASP.NET 调用Excel模版,导出Excel文件
- 技术负责人要关注团队的几个方面
- Android数据库高手秘籍(六)——LitePal的修改和删除操作
- 多个activity之间的数据共享
- POJ 3176 解题报告
- [Qt] QtcpSocket获取ip地址的小bug
- 使用Logstash + Elasticsearch作为大数据索引、分析工具