#include
#include
#include
int main()
{
int a[500]={0},b[500]={0},c[2000]={0},i,j,n,m,k;
char f[500]=" ",o[500]=" ";
printf("输入a:");
gets(f); //字符串得到数字后,转换给数组
printf("输入b:");
gets(o);
if(strlen(f)>strlen(o))
{
n=strlen(f);
int i,j=0;
for(i=n-1;i>=0;i--)
{
a[j++]=f[i]-'0';
}
j=0;
m=strlen(o);
for(i=m-1;i>=0;i--)
{
b[j++]=o[i]-'0';
}
}
else
{
n=strlen(o);
int i,j=0;
for(i=n-1;i>=0;i--)
{
a[j++]=o[i]-'0';
}
j=0;
m=strlen(f);
for(i=m-1;i>=0;i--)
{
b[j++]=f[i]-'0';
}
}
for(i=0;i
c[i+j]+=a[i]*b[j];
}
for(i=0;i<=n;i++)
{
c[i+1]+=c[i]/10;
c[i]=c[i]%10;
}
k=n*m;
for(i=k;i>=0;i--)
{
if(i==k && c[i]==0)
{
k--;
continue;
}
else break;
}
for(i=k;i>=0;i--)
{
printf("%d",c[i]);
}
printf("\n");
system("pause");
return 0;
}
#include "stdio.h"
int main(void)
{
int chengshu1;
int chengshu2;
int shijideshu;
int wanjiadeshu;
printf("欢迎参加自测考试,您总共有两次答题机会,若两次皆答错,将没有剩余机会\n\n\n\n");
printf("请输入您将要计算的第一个乘数\n\n\n\n");
scanf_s("%d", &chengshu1);
printf("请输入您将要计算的第二个乘数 \n\n\n\n");
scanf_s("%d", &chengshu2);
shijideshu = chengshu1 * chengshu2;
printf("请输入得数,还有两次机会\n\n\n");
scanf_s("%d", &wanjiadeshu);
if (wanjiadeshu == shijideshu) {
printf("你答对了!恭喜!\n\n\n");
};
if (wanjiadeshu != shijideshu) {
printf("很遗憾,你答错了,还剩一次机会\n\n\n");
printf("请输入得数\n\n\n");
scanf_s("%d", &wanjiadeshu);
if (wanjiadeshu == shijideshu) {
printf("你答对了!恭喜!\n\n\n");
};
};
if (wanjiadeshu != shijideshu) {
printf("不好意思,您答错了,没有剩余机会------来自匿名用户,未经许可请勿转载");
};
}
位数比较多的吧,超过int long 的范围的???
就模拟你的运算过程就可以了
用字符串表示大整数
只需要乘法?
我可以把我大数乘法的类发给你, 不过你需要这么完整的么?