a*b(高进度乘以int类型的数)
以下是我今日的a-b(高精度)的程序,\(^o^)/偶也偶也偶也偶也!
程序:
#include<stdio.h>
#include<string.h>
char s[1000];----------------------------------------------------------//定义一个字符数组
int a[1000]={0};-----------------------------------------------//定义一个int类型的数组
int main()
{
int l1,i,t;
freopen("gjc.in","r",stdin);
freopen("gjc.out","w",stdout);//文件操作
scanf("%s",s);------------------------------------------//读第一个数在字符串中
scanf("%d",&t);---------------------------------//读第二个数,今天类型
l1=strlen(s);----------------------------------------------//用strlen函数来得到第一个数的长度
for(i=0;i<=l1-1;i++)
{
a[l1-1-i]=s[i]-'0';
}---------------------------------------------------------//将第一个数在字符串中转成int类型数组
for(i=0;i<=l1-1;i++)
{
a[i]=a[i]*t;
}
for(i=0;i<=l1-1;i++)
{
if(a[i]>=10)
{
a[i+1]=a[i+1]+a[i]/10;
a[i]=a[i] % 10;
}
}-------------------------------------------------------------------//用循环来做乘法
while(a[l]>=10)
{
a[l1+1]=a[l1+1]+a[l1]/10;
a[l1]=a[l1] % 10;
l++;
}----------------------------------------------------------------------------//进行进位
for(i=l1;i>=0;i--)
{
printf("%d",a[i]);
}----------------------------------------------------//倒序输出
return 0;
}
我一定要向后面前进,向高处进发,出发!