上班无聊之际就聊聊杭电ACM1002题吧

杭电acm不但对提交的输出格式有严格的要求,而且对代码本身也有要求毕竟我们自己写代码的时候的编译器和它内部的不一定一样是不是。所以就导致了一系列的坑爹事件,先不说太多上代码。

#include<stdio.h>
#include<string.h>char lastnum[1000]={0};
char returnchar[1002] = {0},modifychar[1002] = {0};
char num1[1000] = {0},num2[1000] = {0};int allleng = 0;//倒置字符串
char * ChangeCharLastNum()
{int i = 0,lasti = allleng - 1,modify = 0,isFirst = 0;for(; i < allleng; i ++){returnchar[i] = lastnum[lasti --];      }returnchar[i] = '\0';return returnchar;
}void CurCharTwoNum(char * num1, char * num2)
{int length1 = strlen(num1) - 1;int length2 = strlen(num2) - 1;char centernum;int jinwei = 0; int curnum = length1 > length2 ? length1 : length2, i = 0;allleng = 0;while(1){if(length1 == -1 && length2 != -1){//相加加上进位 centernum = num2[length2];              length2 --;                     }else if(length2 == -1 && length1 != -1){centernum = num1[length1];length1 --;     }else if(length2 == -1 && length1 == -1){if(jinwei == 1){lastnum[i++] = '1';allleng ++;}lastnum[i] = '\0';break;  }else{centernum = num1[length1] + (num2[length2] - '0');length2 --;length1 --;}centernum += jinwei == 1 ? 1 : 0;//检测是否产生进位 if(centernum - '0' > 9){lastnum[i]  = (centernum - '0') % 10 + '0';jinwei = 1;}                else{lastnum[i]  = centernum;jinwei = 0;}i ++;//检测字符串的长度 allleng ++;}
}int main()
{int curnum = 0,i = 0;scanf("%d", &curnum);for(i = 0;i < curnum;i ++){scanf("%s%s", num1,num2); CurCharTwoNum(num1, num2);printf("Case %d:\n",i + 1);if(i != curnum - 1)printf("%s + %s = %s\n\n", num1, num2, ChangeCharLastNum());elseprintf("%s + %s = %s\n", num1, num2, ChangeCharLastNum());}return 0;
}

这个是我修改过好几个版本之后的代码其实一开始输出就是对的 但是问题一直出在代码本身上,比如

char lastnum[1000]={0};
char returnchar[1002] = {0},modifychar[1002] = {0};
char num1[1000] = {0},num2[1000] = {0};

这些声明一开始是放在局部变量中然后通过函数来返回地址,本地编译器都是没有任何问题的输出格式也全部都是对的但是就是怎么都是AC不了一直都是Wrong Answer。经过双目扫描n久之后才发现下面编译器爆了一个警告。就尝试的修改了结果就他妈的AC了。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
而且它这题根本就没有考虑要相加的2个数的长度也就是是题目默认这2个数是长度相等的。亏我还去天真的加了这个不相等的相加,总之坑之又坑。。
最后如果有说错的欢迎指出来,希望大家别踩坑。同时好好上班

上班无聊之际就聊聊杭电ACM1002题吧相关推荐

  1. Help Johnny-(类似杭电acm3568题)

    Help Johnny(类似杭电3568题) Description Poor Johnny is so busy this term. His tutor threw lots of hard pr ...

  2. 杭电2317题 Nasty Hacks

    /** 杭电2317题 Nasty Hacks讨厌的黑客题目大意:给你三个数 第一数表示是再不做广告的前提下公司的收入为 r 第二数表示在做广告的前提下公司的收入为 e第三数表示做广告的成本为 c*/ ...

  3. 最详细最简单:最大公因数求法、辗转相除法、更相减损法,入门ACM,杭电水题,算法递归,初级算法题一看就懂

    文章目录 前言 一.名称定义 1.最大公约数 2.辗转相除法 3.更相减损法 二.ACM杭电入门题 1.解题思路 三.解题参考代码(C语言,C++) 0.最优算法(C++) 1.辗转相除求解(C语言) ...

  4. 杭电acm2151题java的解法,杭电ACM题型分类

    杭电ACM题型分类 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.1032.1037.1040.1048.1 ...

  5. 杭电oj1620题c语言答案,杭电oj部分水题 c语言源代码.doc

    杭电oj部分水题 c语言源代码 殿剐忱酪短祭幂曝沈脸蛀蓑挞姻扶宠秤蓄幌榆矾巨旷于渍弯史影得熄孟椒菊葫彦籍蛛绊趣庙捣载睹答赊索添垛蝎伙生瞎回悟辅篇狱辗歧病氯急迸怜煽跋屋凡逻甲确烧迟卞姻郸被康少辊蒂刽厂礁 ...

  6. 杭电oj1062题c语言答案,杭电大OJ题1062,为什么这样的代码会Time Limited exceed,是太复杂了吗?...

    杭电大OJ题1062,为什么这样的代码会Time Limited exceed,是太复杂了吗?0 问题ProblemDescriptionIgnatiuslikestowritewordsinreve ...

  7. 杭电oj java printf_杭电oj1042题大数,java,百思不得其解为何WA,求指教

    我看了标准答案,他们是这样的:importjava.math.BigDecimal;importjava.math.BigInteger;importjava.util.Scanner;publicc ...

  8. 杭电60题--part 1 HDU1003 Max Sum(DP 动态规划)

    最近想学DP,锻炼思维,记录一下自己踩到的坑,来写一波详细的结题报告,持续更新. 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003 Problem ...

  9. 杭电的题,输出格式卡的很严。HDU 1716 排列2

    题很简单,一开始写代码,是用整数的格式写的,怎么跑都不对,就以为算法错了,去看大佬们的算法STL全排列:next_permutation(); 又双叒叕写了好几遍,PE了将近次,直到跑了大佬代码发现, ...

最新文章

  1. Resultset获取行数和列数
  2. Object类的用法(三)
  3. Jmeter性能测试之后置处理器Json提取器的使用
  4. java 混合排序_字母、数字混合方式,按照自然语言排序,java版
  5. 服务器上如何安装两个php网站,服务器安装两个php版本吗
  6. No Pain No Game HDU - 4630(gcd+线段树+离线处理)
  7. numpy序列预处理dna序列_个人隐私DNA亲子鉴定序列
  8. 泛型数组 c# 0104
  9. java setcolumnwidth_Java XSSFSheet.setColumnWidth方法代码示例
  10. [转]Groovy和Grails简介
  11. 06.Python网络爬虫之requests模块(2)
  12. 【读书心得】 高质量C++/C编程指南-林锐
  13. 计算机考研408-2010
  14. java8steam流 filler_做有机硅,不懂英文哪能行?——赶紧收藏,说不定哪天就用到了!...
  15. 线程有哪些状态?每个状态是什么意思?又是如何切换的?
  16. MIPI入门——D-PHY介绍(一)
  17. 视界更宽阔,青橙 VOGA V 投影手机评测
  18. IDM无法找到服务器magnet IDM服务器禁止访问此文件
  19. 计算机一级设置项目符号,重推计算机等级考试题库:一级MS Office第三章“项目符号和段落编号”...
  20. 应用程序运行 Error 1706 错误

热门文章

  1. 毕业论文图片格式、分辨率选择及高质量Word转PDF方法
  2. afe 高通_高通ASOC中的machine驱动
  3. 关于排序算法,看这一篇就够了!这篇看不懂麻烦找我拿红包
  4. Python常见的数据分析工具有哪些?
  5. 0成本快速搭建web服务器
  6. 固态硬盘简称是不是ssd_为什么懂电脑的人都说SSD不要分区?原来真相是这样!...
  7. JVM面试题(史上最强、持续更新、吐血推荐)
  8. 为什么导师不喜欢推荐老实人?这是我听过最醍醐灌顶的回答!
  9. 【BUGKU】CTF >>分析---中国菜刀
  10. 怎样对已经装好系统的电脑进行分区