求两个字符串的乘积,结果存到字符串中,例如字符串一中存的“657891”,字符串二中存的“521”,分别将字符串中的字符转换成整型数字,进行计算后,再转换成字符类型存储起来
- #include<stdio.h>
- #include<stdlib.h>
- voidmul(char*input1,intn1,char*input2,intn2,char*output)
- {
- char*p1=input1;
- char*p2=input2;
- intres1,res2,res;
- chartmp[50];
- intm=0,i;
- if(p1==NULL||p2==NULL)
- return;
- res1=*p1-'0';
- while(*++p1)
- res1=10*res1+(*p1-'0');
- printf("res1=%d\n",res1);
- res2=*p2-'0';
- while(*++p2)
- res2=10*res2+(*p2-'0');
- printf("res2=%d\n",res2);
- res=res1*res2;
- while(res>0)
- {
- tmp[m]=res%10+'0';
- res=res/10;
- m++;
- }
- tmp[m]='\0';
- for(i=0;i<m;i++)
- output[i]=tmp[m-1-i];
- output[m]='\0';
- }
- intmain()
- {
- charinput1[50]="19";
- charinput2[50]="19";
- charoutput[50];
- mul(input1,strlen(input1),input2,strlen(input2),output);
- printf("mulresult=%s\n",output);
- system("pause");
- return0;
- }