大数据乘法

xxy220543 9年前

 // 大数据乘法.cpp : 定义控制台应用程序的入口点。   //     #include "stdafx.h"     #include<stdio.h>   #include<string.h>   #include<stdlib.h>     void getData(char* str1,char* str2){   int s1,s2;   s1=strlen(str1);   s2=strlen(str2);   int* p=(int*)malloc((s1+s2)*sizeof(int));   memset(p,0,(s1+s2)*sizeof(int));   for(int i=0;i<s1;i++){   for(int j=0;j<s2;j++){   p[i+j]+=(str2[j]-'0')*(str1[i]-'0');   }   }   for(int i=s1+s2-1;i>=0;i--){   if(p[i]>=10){    p[i-1]=p[i]/10;    p[i]%=10;   }   }   int i=0;     while(p[i]==0){   i++;   }   int j;   char* lastResult=(char*)malloc(100*sizeof(char));   for(j=0;j<s1+s2-1;j++,i++){    lastResult[j]=p[i]+'0';   }   lastResult[j]='\0';   printf("最后结果:%s",lastResult);   }   int main1(){     char num1[100]={0};   char num2[100]={0};   scanf("%s%s",num1,num2);   getData(num1,num2);       return 0;   }   int main2(){     printf("该方法更好");       return 0;   }   /*int _tmain(int argc, _TCHAR* argv[])   {   return 0;   }*/