1 char * bigadd(char *adda,int lena,char *addb,int lenb); 2 char * bigsub(char *suba,int lena,char *subb,int lenb); 3 char * bigmul(char *m,int lena,char *f,int lenb); 4 char * bigdiv(char *diva,int lena,char *divb,int lenb);
3.编写一个测式的文件,代码如下。
1 #include"big.h" 2 #include
3 #include
4 #include
5 int lena,lenb; 6 char *result; 7 char sa[BUFSIZ],sb[BUFSIZ]; 8 void getdata(){ 9 scanf("%s",sa); 10 scanf("%s",sb); 11 lena=strlen(sa); 12 lenb=strlen(sb); 13 14 } 15 void myadd(void){ 16 getdata(); 17 result=bigadd(sa,lena,sb,lenb); 18 puts(result); 19 } 20 void mysub(void){ 21 getdata(); 22 result=bigsub(sa,lena,sb,lenb); 23 puts(result); 24 } 25 void mymul(void){ 26 getdata(); 27 result=bigmul(sa,lena,sb,lenb); 28 puts(result); 29 } 30 void mydiv(void){ 31 getdata(); 32 result=bigdiv(sa,lena,sb,lenb); 33 puts(result); 34 } 35 36 int main(){ 37 myadd(); 38 mysub(); 39 mymul(); 40 mydiv(); 41 return 0; 42 }
编译和测试:
gcc big_add.c big_sub.c big_mul.c big_div.h ./a.out
C语言大数运算,参考了很多人的博客和代码,学到了很多,在这里表示感谢。这次对大数运算的小小总结也是希望可以帮到有需求的人,哪怕一点点。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/223992.html原文链接:https://javaforall.net
