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).其实还有更简便的方法. ...
随机推荐
- 解决google登录界面input输入框颜色不正确问题
加入以下样式: input:-webkit-autofill { -webkit-box-shadow: 0 0 0px 1000px #e2e2e2 inset !important; }
- 【Mac系统】istatmenus6.20下载以及激活
下载地址:https://pan.baidu.com/s/1-2-yw2NnOlGJ46D536t5uQ iStat Menus 的激活密码: Email: 982092332@qq.com SN: ...
- Sublime Text3 运行python(转)
From:http://blog.csdn.net/hun__ter/article/details/51223031 安装sublime text3后,按Ctrl+b无法运行python文件. 解决 ...
- 自定义cginc文件
首先定义一个cginc文件如下所示: #ifndef MY_CG_INCLUDE #define MY_CG_INCLUDE struct appdata_x { float4 vertex : PO ...
- Python的Django框架中的Context使用
Python的Django框架中的Context使用 近期整理些Python方面的知识,一旦你创建一个 Template 对象,你能够用 context 来传递数据给它. 一个context是一系列变 ...
- M - 基础DP
M - 基础DP Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Descriptio ...
- MySql存储过程及MySql常用流程控制语法
/* 该代码是创建了一个名叫"p4"的存储过程并设置了s1,s2,s3两个int型一个varchar型参数,还可以是其他数据类型,内部创建了x1,x2两个变量 DELIMITER是 ...
- 九度OJ 1333:考研海报 (区间操作)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:738 解决:299 题目描述: sun是万千考研学子中的一员,他每天过着三点一线的生活. 学校里有一个公告栏,他每天都看到上面张贴着各种考研 ...
- Apache Maven pom文件
Welcome to Apache Maven Apache Maven is a software project management and comprehension tool. Based ...
- 微信H5支付开发步骤总结
* 开发步骤: * 1.在微信公众号平台设置授权目录,即jsapi.php所在的目录 * 2.在微信支付平台下载证书,放到cert目录 * 3.在微信支付平台设置API秘钥,同时在WxPay.Conf ...