关于大数相加的问题 求修改方案
#include<stdio.h>#include<string.h>
int main()
{
char a[1000],b[1000];
int num[1100];
int n,i,j,a1[1100],b1[1100],t,k;
scanf("%d",&n); //输入测试样例数
for(k=1;k<=n;k++)
{ scanf("%s",a); //读入测试两个大数
scanf("%s",b);
int a1=strlen(a);
for(j=0,i=a1-1;i>=0;i--)
a1[j++]=a[i]-'0';
int b1=strlen(b);
for(j=0,i=b1-1;i>=0;i--)
b1[j++]=b[i]-'0';
for(i=0;i<1000;i++)
{
a1[i]+=b1[i]; //a1[i]计算得出大数和
if(a1[i]>=10)
a1[i]-=10;
a1[i+1]++; //位数大于10则进位
}
printf("Case 1:\n"); //输出 Case 1: a + b =
printf("%s + %s = ",a,b);
for(i=1100;(i>=0)&&(a1[i]==0);i--);// 从高位到低位跳过高位的0
if(i>=0)
for(;i>=0;i--)
printf("%d",a1[i]);
else printf("0");
printf("\n\n");
}
return 0;
}
提示
--------------------Configuration: 1 - Win32 Debug--------------------
Compiling...
1.c
K:\计算机\VC6.0\Microsoft Visual Studio\MyProjects\数组实验\1.c(12) : error C2143: syntax error : missing ';' before 'type'
K:\计算机\VC6.0\Microsoft Visual Studio\MyProjects\数组实验\1.c(13) : warning C4047: '=' : 'int ' differs in levels of indirection from 'int *'
K:\计算机\VC6.0\Microsoft Visual Studio\MyProjects\数组实验\1.c(15) : error C2143: syntax error : missing ';' before 'type'
K:\计算机\VC6.0\Microsoft Visual Studio\MyProjects\数组实验\1.c(16) : warning C4047: '=' : 'int ' differs in levels of indirection from 'int *'
执行 cl.exe 时出错.
1.obj - 1 error(s), 0 warning(s)
表示不会修改了