HDOJ,杭电1877,又一版A+B。。又是进制转化的题目。。

来源:互联网 发布:sql join 编辑:程序博客网 时间:2024/05/23 11:56

这道题。。我提交了N次,最后内牛满面的AC了。。。。

我只能说,,,粗心大意害死AC!!!!!

(此题的重点就是进制转换的核心代码,还有一个易错点就是输入的十进制数字为0 的时候。)

代码:

/***** HDOJ_1877_又一版A+B ********//******** written by C_Shit_Hu ************/////////////////简单题--数字进制转化题目////////////////****************************************************************************//* 简单的进制转化题。。。。。Problem Description输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数。  Input输入格式:测试输入包含若干测试用例。每个测试用例占一行,给出m和A,B的值。当m为0时输入结束。Output输出格式:每个测试用例的输出占一行,输出A+B的m进制数。  *//****************************************************************************/// #include <stdio.h>#include <string.h>int main(){_int64 initNum_A, initNum_B,  sum, aftNum, yu=1 ;int i, NUM[40], temp ;while(scanf("%I64d%I64d%I64d", &aftNum, &initNum_A, &initNum_B) != EOF && aftNum != 0){temp = 0 ;  sum = 1 ;        memset(NUM, 0, sizeof(NUM)) ;sum = initNum_A + initNum_B ; while(sum != 0){yu = sum % aftNum ;sum /= aftNum ;NUM[temp] = yu ;temp ++ ;}   // 转换的核心代码if (temp == 0){printf("0\n") ;} // 易错点else{for (i = temp-1; i >= 0; i--){printf("%d", NUM[i]) ;}printf("\n") ;}}return 0 ;}/******************************************************//********************  心得体会  **********************//*果然是水题。。。还做的那么慢。。  水水更健康!!!*//******************************************************/



原创粉丝点击