关于atoi函数使用的一道题,学习自网络牛人。

来源:互联网 发布:网络管理及其功能 编辑:程序博客网 时间:2024/06/02 06:31
刚刚开始刷九度online judge的题目:不会了,上网跟别人学的
题目描述:
给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。
现在请计算A+B的结果,并以正常形式输出。

输入:
输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9 < A,B < 10^9)。

输出:
请计算A+B的结果,并以正常形式输出,每组数据占一行。

样例输入:
-234,567,890 123,456,7891,234 2,345,678
样例输出:
-1111111012346912

我用c++ vc6.0 做的, atoi 应该是ascii to int 吧 

#include<iostream.h>#include<string>using namespace std;int main(){char s1[14];//有取值范围,所以设置这么大char s2[14];char s3[14];char s4[14];while(1){cin>>s1>>s2;int k1=0,k2=0;int l1,l2;l1=strlen(s1);l2=strlen(s2);for (int i=0;i<l1;i++){if (s1[i]!=',')s3[k1++]=s1[i];s3[k1]='\0';}//printf("%d\n",atoi(s3));    //做了一些测试,atoi 必须对应一串连续的数,如果数字之间有\0,转换之后返回0,所以设置了一个k1 k2        for (int j=0;j<l2;j++){if (s2[j]!=',')s4[k2++]=s2[j];s4[k2]='\0';}int add=atoi(s3)+atoi(s4);cout<<add<<endl;//break;}return 0;}
0 0
原创粉丝点击