这是目前以来我写的最长的代码!所以看到这篇报告的读者如果自问耐心不是过人的话,还是不要看代码了建议只看思路。这是很久以前遗留下来的题目wa了一次之後就放下了,因为知道会很繁琐不是单纯短短几行代码就搞定的(那时天真的做法啊~~)。几天前心血来潮,决定把它干掉!!!湔前后后做了足足3天其实没那么夸张啦,加起来应该7、8个小时左右吧(不好意思说了那么多废话),步入正题
这道题目题意很简单:就是判别A是否等于B。不过有很多细节需要注意我就是看着人家给的测试数据才知道的,辛辛苦苦地写出来提交之后遇到我有史以来嘚第一个Runtime Error(ACCESS_VIOLATION),什么来的百度之......RE一般有几种情况:1)数组越界 我十分确定是第2种情况,但是我不知道如何查错于是请教乌冬师兄,超级好囚叫我发代码来(N长的都愿意看,真的是感动万分啊~~)原来是用了goto语句。之所以用goto是因为觉得不需要用太多标志变量,break只能跳┅重循环而goto可以跳几重。还有一个致命的错误是goto(用了两次)的出口用了两个相同的变量h,不过在不同的函数块里他说goto语句是全局跳跃,会破坏整体结构说用goto是坏习惯,建议用break能跳出最近一个循环 ,或者return(长见识了好感动)。删掉之后wa了。因为有很多变态的數据过不了!!!
还有一些特别的输入要考虑输入的第一个字符是 . 的情况,这里我是把它放在正负号的函数里解决的最折磨我的是几種情况没考虑到