UVA - 424 Integer Inquiry
2014-09-19 08:44
302 查看
题目大意:求给出的整数的和
解体思路:将数放在数组中,再进行运算
有个bug,第61行的count2<len1那,因为num1数位增加后,但len1仍没有变,所以造成的错误,输入数字99 和9999就会得到错误结果
解体思路:将数放在数组中,再进行运算
有个bug,第61行的count2<len1那,因为num1数位增加后,但len1仍没有变,所以造成的错误,输入数字99 和9999就会得到错误结果
#include<cstdio> #include<cstring> int main() { char end[200]; char num1[200]; char num2[150]; int number1[200]; int number2[100]; int len1; int len2; memset(num1,'\0',sizeof(num1)); gets(num1); len1 = strlen(num1); if(len1 == 1 && num1[0] == 0) return 0; for(int i = 0; i < len1 / 2 ; i++) { char temp; temp = num1[i]; num1[i] = num1[len1 - i - 1]; num1[len1 - i - 1] = temp; }//先倒置 while(gets(num2)) { if(strlen(num2) == 1 && num2[0] == '0') break; //判断是否为零 int num; len2 = strlen(num2); len1 = strlen(num1); int len3; int mark = 0 ; if(len1 < len2) { for(int i = 0; i <= len2 - len1 + 1; i++) num1[len1 + i ] = '0' ; } // num1的数位总比num2大1 else if(len1 == len2) num1[len1] = '0';// num1的位数总比num2大1 for(int i = 0; i < len2 / 2 ; i++) { char temp; temp = num2[i]; num2[i] = num2[len2 - i - 1]; num2[len2 - i - 1] = temp; }// 将len2倒置 int count;//记录取到第几个 for(count = 0; count < len2; count++) { num =( num1[count] - '0') +( num2[count] - '0' ) + mark; if(num >= 10) { mark = 1; num = num - 10; } else mark = 0; num1[count] = num + '0'; num = 0; } int count2; if(mark == 1) for( count2 = count; count2 < len1; count2++) { num = num1[count2] - '0' + mark; if(num >= 10) num = num - 10; else{ num1[count2] = num + '0'; mark = 0; break; } num1[count2] = num + '0'; } if(count2 == len1 && mark == 1) num1[len1] = '1'; memset(num2,'\0',sizeof(num2)); } len1 = strlen(num1); //len3取最小值的位数 if(num1[len1 - 1] != '0') printf("%c",num1[len1 -1]); for(int i = len1 - 2; i >= 0; i--) { printf("%c",num1[i]); } printf("\n"); return 0; }
相关文章推荐
- UVA bignumber 424 integer inquiry
- UVa 424 Integer Inquiry
- UVa 424 - Integer Inquiry
- UVA424 Integer Inquiry
- UVa-424-Integer Inquiry
- uva 424 - Integer Inquiry
- UVa-424-Integer Inquiry
- uva 424 - Integer Inquiry
- UVa 424 - Integer Inquiry
- UVa 424 Integer Inquiry
- UVA 424 Integer Inquiry
- UVa 424 Integer Inquiry
- UVa:424 - Integer Inquiry
- UVa 424 - Integer Inquiry
- UVa 424 - Integer Inquiry
- uva 424 - Integer Inquiry
- UVa 424 - Integer Inquiry
- uva-424 - Integer Inquiry
- UVA - 424 - Integer Inquiry
- UVA - 424 Integer Inquiry