用字符串实现大数的相加,没有考虑存在负数的情况
题目:用字符串实现大数的相加,没有考虑存在负数的情况 ? ? Code(C): ? #include<stdio.h> void add(char *s1,char *s2,char *s); void main() void add(char *s1,char *s) { ?int len1,len2; ?int flag = 0,i1,i2,i; ?len1 = strlen(s1); ?len2 = strlen(s2); ?i1 = len1-1; ?i2 = len2-1; ?i = (len1 > len2 ? len1:len2)+1; ?s[i] = ' '; ?i--; ?while(i1 >= 0 && i2 >= 0) ?{ ??int temp = s1[i1]-'0'+s2[i2]-'0'; ??if(flag == 1) ???temp++; ??if(temp >= 10) ??{ ???flag = 1; ???temp -= 10; ??} ??s[i] = temp+'0'; ??i--; ??i1--; ??i2--; ?} ?if(i2 >=0) ?{ ??while(i2 >= 0) ??{ ???int temp = s2[i2]-'0'; ???if(flag == 1) ???{ ????temp++; ???} ???if(temp >= 10) ???{ ????flag = 1; ????temp -= 10; ???} ???s[i] = temp+'0'; ???i--; ???i2--; ??} ?} ?? else if(i1 >=0) ?{ ??while(i1 >= 0) ??{ ???int temp = s1[i1]-'0'; ???if(flag == 1) ???{ ????temp++; ???} ???if(temp >= 10) ???{ ????flag = 1; ????temp -= 10; ???} ???s[i] = temp+'0'; ???i--; ???i1--; ??} ?} ?if(flag == 1) ??s[i] = '1'; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |