大数的相加
发布时间:2020-12-14 03:06:47 所属栏目:大数据 来源:网络整理
导读:大数的相加是不难的,只要模拟好过程,在注意进位的判断,尤其、是最后一个的判断,很多人大概错在最后一个的进位忘了判断#includestdio.h#includestring.h#define MAXN 100 char x[MAXN] ;void Add(char *str1,char *str2,char *Addstr){int len1 = strlen(
大数的相加是不难的,只要模拟好过程,在注意进位的判断,尤其、 是最后一个的判断,很多人大概错在最后一个的进位忘了判断 #include<stdio.h> #include<string.h> #define MAXN 100 char x[MAXN] ; void Add(char *str1,char *str2,char *Addstr){ int len1 = strlen(str1),len2 = strlen(str2) ; int pos = MAXN -1 ; len1-- ; len2-- ; int jwe = 0,temp ; while(len1>=0&&len2>=0){ temp = (str1[len1]-'0'+str2[len2]-'0'+jwe)%10 ; jwe = (str1[len1]-'0'+str2[len2]-'0'+jwe)/10 ; Addstr[--pos] = temp + '0' ; len1-- ; len2-- ; } while(len1 >= 0 ){ temp = (str1[len1] - '0' + jwe)%10 ; jwe = (str1[len1] -'0'+jwe)/10 ; Addstr[--pos] = temp + '0' ; len1-- ; } while(len2 >= 0 ){ temp = (str2[len2] - '0' + jwe)%10 ; jwe = (str2[len2] -'0'+jwe)/10 ; Addstr[--pos] = temp + '0' ; len2-- ; } if(jwe > 0) Addstr[--pos] = jwe + '0' ; strcpy(x,Addstr+pos) ; } int main(){ char str1[MAXN],str2[MAXN],Addstr[MAXN]={0}; scanf("%s%s",str1,str2) ; Add(str1,str2,Addstr) ; printf("%sn",x) ; return 0 ; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |