本题要求实现一个函数,实现大整数相加运算。大整数按每4位保存在整数数组中,如果大整数位数不是4的倍数,则将保证低位都按4位一存。如“123456789”保存为1,2345,6789。
函数接口定义:
int convert(char a[],int x[]);
int add(int x[],int len1,int y[],int len2,int z[]);
a
是以字符串形式输入的整数; x
是按4位一组保存的整数。convert函数实现将字符串转换为整数保存,数组中以顺序存储。如“123456789”存储数组中元素为1,2345,6789。
add函数实现将x和y做相加运算,结果存储在数组c中,按逆序存放,如如“123456789”存储数组中元素为6789,2345,1。
裁判测试程序样例:
#include <stdio.h>
#include <string.h>
#define N 100
int convert(char a[],int x[]);
int add(int x[],int len1,int y[],int len2,int z[]);int main()
{char a[N],b[N];int m[N/4+1],n[N/4+1],s[N/4+1],len1,len2,len3,i;scanf("%s%s",a,b);len1=convert(a,m);len2=convert(b,n);len3=add(m,len1,n,l