------------------------------------------------------------

以此题警告自己:

总结,

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,错误,已找到错误的更多相关文章

  1. zoj 2001 Adding Reversed Numbers

    Adding Reversed Numbers Time Limit: 2 Seconds      Memory Limit: 65536 KB The Antique Comedians of M ...

  2. zoj2001 Adding Reversed Numbers

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2001 Adding Reversed Numbers Time ...

  3. ACM Adding Reversed Numbers(summer2017)

    The Antique Comedians of Malidinesia prefer comedies to tragedies. Unfortunately, most of the ancien ...

  4. poj1504 Adding Reversed Numbers

    Adding Reversed Numbers Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 17993 Accepted: 9 ...

  5. POJ 1504 Adding Reversed Numbers (水题,高精度整数加法)

    题意:给两个整数,求这两个数的反向数的和的反向数,和的末尾若为0,反向后则舍去即可.即若1200,反向数为21.题目给出的数据的末尾不会出现0,但是他们的和的末尾可能会出现0. #include &l ...

  6. POJ 1504 Adding Reversed Numbers

    /*Sample Input 3 24 1 4358 754 305 Sample Output 34 1998 */ 值得总结的几点就是: 1.atoi函数将字符串转化为整型数字(类似于强制转换) ...

  7. Poj 1504 Adding Reversed Numbers(用字符串反转数字)

    一.题目大意 反转两个数字并相加,所得结果崽反转.反转规则:如果数字后面有0则反转后前面不留0. 二.题解 反转操作利用new StringBuffer(s).reverse().toString() ...

  8. POJ 2225 / ZOJ 1438 / UVA 1438 Asteroids --三维凸包,求多面体重心

    题意: 两个凸多面体,可以任意摆放,最多贴着,问他们重心的最短距离. 解法: 由于给出的是凸多面体,先构出两个三维凸包,再求其重心,求重心仿照求三角形重心的方式,然后再求两个多面体的重心到每个多面体的 ...

  9. POJ 1903 & ZOJ 2469 & UVA 1326 Jurassic Remains (部分枚举)

    题意:给定n个只有大写字母组成的字符串,选取尽可能多的字符串,使得这些字符串中每个字母的个数都是偶数.n<=24 思路:直接枚举每个字符串的选或不选,复杂度是O(2^n).其实还有更简便的方法. ...

随机推荐

  1. nginx反向代理做cache配置

    前序:请耐性子看完,前面的这个配置可以达到按后缀名进行缓存,但无法被purge.后面的配置可以被purge.具体实施方案按个人情况而定. 需要第三方的ngx_cache_purge模块:wget ht ...

  2. Vim使用技巧(1) -- 普通模式技巧 【持续更新】

    直观的来一张键盘图先 符号快捷键 . //重复上次修改 ^ //光标快速跳转到当前行开头 $ //光标快速跳转到当前行结尾 f{char} //光标快速跳转到当前行下一个{char}字符,{char} ...

  3. strpos 判断字符串是否存在

    strpos    中为什么要用逗号隔开的原因是因为   防止找出相匹配的中 ,  如   查找1    而数组中  存在  12  那么这个结果也是可以找出来的 ,分别在1 前后加个,  就是为了区 ...

  4. 软件测试人员需要精通的开发语言(3)--- Linux

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.不得不说下,中国产的红旗系统,牛的一逼,造价很贵,但具体何用处估 ...

  5. MATLAB循环结构:for语句+定积分实例

    for语句 格式: for 循环变量=表达式1:表达式2:表达式3 循环体语句 end 表达式1:循环变量初值:表达式2:步长:表达式3:循环变量终值. for 循环变量=矩阵表达式 循环体语句 en ...

  6. isinstance/issubclass/type的区别?

    type() 判断某个对象是否是该类创建的,只看一层,如果是继承类,也不会考虑继承类的类型.. Issubclass() 判断该类是否是另一个类的派生类,也就是子类,参数为类. isinstance( ...

  7. linux c编程:进程控制(二)_竞争条件

    前面介绍了父子进程,如果当多个进程企图对共享数据进行处理.而最后的结果又取决于进程运行的顺序时,就认为发生了竞争关系.通过下面的例子来看下 在这里标准输出被设置为不带缓冲的,于是父子进程每输出一个字符 ...

  8. window 上创建 .gitignore文件

    由于 git默认不上传空文件夹,如果需要上传空文件夹,那么需要这样上传空文件,官方给出这样的做法~~ (需要创建.gitignore文件) 在linux 上比较好操作了,这里说下在window 上 创 ...

  9. java面向对象入门之带参方法创建

    /* Name :创建带参的方法 Power by :Stuart Date:2015.4.25 */ //创建Way类 class Way{ //Way类成员的基本变量 int add1=123; ...

  10. Flex中容器的完全隐藏

    在html中,但我们设置某个dom元素的display属性为none时,dom元素不可见且其占用空间从dom树上隐藏,而在Flex中,但我们把某个组件的visible属性visible设为false的 ...