POJ 1504,ZOJ 2001,UVA 713, Adding Reversed Numbers,错误,已找到错误
------------------------------------------------------------
以此题警告自己:
总结,
1.在数组的使用时,一定别忘了初始化
2.在两种情况复制代码时,一定要小心,注意修改变量名,一不留神就会带来不可估量的后果,一定要仔细挨着一个一个变量的修改,别跳着看着哪个变量就改哪一个变量!
(这个题目中,就是复制了一下,代码,ca,我找了一下午的错。。。。还好终于找到了,一个字母的错,)
-----------------------------------------------------------
//正确,已改正 #include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
char a[1000];
char b[1000];
int main()
{
int n;
int i;
int j;
int co;
int la,lb,lc;
cin>>n;
while(n--)
{
memset(a,0,sizeof(a));//此处注意初始化!!!
memset(b,0,sizeof(b));//此处注意初始化!!! cin>>a; cin>>b; co=0;
la=strlen(a);
lb=strlen(b);
if(la>lb)
{
for(i=0;i<lb;i++)
{
a[i]='0'+(a[i]-'0')+(b[i]-'0')+co;
if(a[i]>'9')
{
a[i]=a[i]-10;
co=1;
}
else
co=0;
}
for(i=lb;i<la;i++)
{
a[i]=a[i]+co;
if(a[i]>'9')
{
a[i]=a[i]-10;
co=1;
}
else
co=0;
}
a[la]='0'+co;
la=strlen(a); for(i=la-1;i>=0;i--)
{
if(a[i]!='0')
break;
a[i]='\0';
}
if(i==-1) cout<<0<<endl;//此题可以不必考虑0的情况,也可通过// -----------(另外 此处 输出的整数 0 也可以是 字符 '0' )
else
{
for(i=0;i<la;i++)
{
if(a[i]!='0')
break;
} for(;a[i];i++)
{
if(a[i]!='\0')
cout<<a[i]-'0';// -----------( 另外 此处 输出的整数 a[i]-'0' 也可以是 直接输出 字符 a[i] )
}
cout<<endl;
}
}
else
{
for(i=0;i<la;i++)
{
b[i]='0'+(b[i]-'0')+(a[i]-'0')+co;
if(b[i]>'9')
{
b[i]=b[i]-10;
co=1;
}
else
co=0;
}
for(i=la;i<lb;i++)
{
b[i]=b[i]+co;
if(b[i]>'9')// //// 就在这!!!错了一个字母,正确应该是b[i],原来是a[i] ,所以错了 !!是 复制的时候 没有 完全把 变量名 改完 ,。
{
b[i]=b[i]-10;
co=1;
}
else
co=0;
}
b[lb]='0'+co;
lb=strlen(b); for(i=lb-1;i>=0;i--)
{
if(b[i]!='0')
break;
b[i]='\0';
}
if(i==-1) cout<<0<<endl;//此题可以不必考虑0的情况,也可通过// -----------(另外 此处 输出的整数 0 也可以是 字符 '0' )
else
{
for(i=0;i<lb;i++)
{
if(b[i]!='0')
break;
}
for(;b[i];i++)
{
if(b[i]!='\0')
cout<<b[i]-'0';// -----------( 另外 此处 输出的整数 a[i]-'0' 也可以是 直接输出 字符 a[i] )
}
cout<<endl;
}
}
}
return 0;
}
---------------------------------------------------------
此题目 不包括
002 1
的情况,
就是 没有 前置 0 的情况 ,因此可以不必考虑
---------------------------------------------------------
//以下代码为 网上代码,函数有待研究
-------------------------------------
//函数有待研究 #include<iostream>
#include<algorithm>
using namespace std; int main(void)
{
int t;
scanf("%d",&t);
while(t--)
{
int a,b;
char s1[13],s2[13];
scanf("%d%d",&a,&b);
sprintf(s1,"%d",a);
sprintf(s2,"%d",b);
reverse(s1,s1+strlen(s1));
reverse(s2,s2+strlen(s2));
sscanf(s1,"%d",&a);
sscanf(s2,"%d",&b);
sprintf(s1,"%d",a+b);
reverse(s1,s1+strlen(s1));
sscanf(s1,"%d",&a);
printf("%d\n",a);
}
return 0;
}
POJ 1504,ZOJ 2001,UVA 713, Adding Reversed Numbers,错误,已找到错误的更多相关文章
- zoj 2001 Adding Reversed Numbers
Adding Reversed Numbers Time Limit: 2 Seconds Memory Limit: 65536 KB The Antique Comedians of M ...
- zoj2001 Adding Reversed Numbers
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2001 Adding Reversed Numbers Time ...
- ACM Adding Reversed Numbers(summer2017)
The Antique Comedians of Malidinesia prefer comedies to tragedies. Unfortunately, most of the ancien ...
- poj1504 Adding Reversed Numbers
Adding Reversed Numbers Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 17993 Accepted: 9 ...
- POJ 1504 Adding Reversed Numbers (水题,高精度整数加法)
题意:给两个整数,求这两个数的反向数的和的反向数,和的末尾若为0,反向后则舍去即可.即若1200,反向数为21.题目给出的数据的末尾不会出现0,但是他们的和的末尾可能会出现0. #include &l ...
- POJ 1504 Adding Reversed Numbers
/*Sample Input 3 24 1 4358 754 305 Sample Output 34 1998 */ 值得总结的几点就是: 1.atoi函数将字符串转化为整型数字(类似于强制转换) ...
- Poj 1504 Adding Reversed Numbers(用字符串反转数字)
一.题目大意 反转两个数字并相加,所得结果崽反转.反转规则:如果数字后面有0则反转后前面不留0. 二.题解 反转操作利用new StringBuffer(s).reverse().toString() ...
- POJ 2225 / ZOJ 1438 / UVA 1438 Asteroids --三维凸包,求多面体重心
题意: 两个凸多面体,可以任意摆放,最多贴着,问他们重心的最短距离. 解法: 由于给出的是凸多面体,先构出两个三维凸包,再求其重心,求重心仿照求三角形重心的方式,然后再求两个多面体的重心到每个多面体的 ...
- POJ 1903 & ZOJ 2469 & UVA 1326 Jurassic Remains (部分枚举)
题意:给定n个只有大写字母组成的字符串,选取尽可能多的字符串,使得这些字符串中每个字母的个数都是偶数.n<=24 思路:直接枚举每个字符串的选或不选,复杂度是O(2^n).其实还有更简便的方法. ...
随机推荐
- 《TomCat与Java Web开发技术详解》(第二版) 第三章节的学习总结--利用Context元素来自定义web应用的存储位置
在学习完第三章后(第三章提供的web应用是helloaapp,我将其放到了tomcat/webapps中),对Context元素的作用理解不深:但是当进入第四章后,发现第四章提供的源码包中也有一个叫h ...
- android greendao3.0 多表关联关系讲解(转)
转自:http://www.jianshu.com/p/dbec25bd575f 前言 之前用过数据库框架:realm.kjdb,今天准备实践学习一下greendao 3.0.greendao 3.0 ...
- 浅析js绑定同一个事件依次触发问题系列(一)
算了 还是上代码吧 记得写过这篇文章,但是找不到了(对,就是找不到了,算了再写一遍吧) 也是在群中有人问这个绑定不同事件 或者同一个事件的依次触发问题 个人建议如果是一个事件的话那么最好写成函数, ...
- Java final关键字特点
一.特点 1.由于继承,方法可以重写,所以父类的功能就会被子类覆盖2.有时候我们不想子类覆盖父类的功能,这时候我们可以使用final关键字3.final可以修饰:类.变量,方法.4.final修饰类, ...
- PHP手机号码正则表达式
php用正则表达式判断手机号码的写法:从文章中匹配出所有的手机号就可以preg_match_all(),如果要检查用户输入的手机号是否正确可这样来检查:preg_match(). 用正则匹配手机号码的 ...
- Count(二维树状数组)
[bzoj1452][JSOI2009]Count Description Input Output Sample Input Sample Output 12 HINT 题解:对于每一个颜色建一 ...
- nginx学习之web服务器(四)
1. 定义一个虚拟服务器 http { server { # Server configuration } } 可以在http {}块里面添加多个server {}块,每一个server {}块代表一 ...
- 算法设计 mac 字符串 标识 n维度 2 3维度 字符串 标识值 特征值
基向量
- Java基础 - 变量的定义和使用
变量定义 public class Main { public static void main(String[] args) { // 定义byte类型的变量 byte b = 10; System ...
- VIM YCM 插件安装问题记录
参考:https://github.com/yangyangwithgnu/use_vim_as_ide https://github.com/Valloric/YouCompleteMe 根据 ht ...