PersonalCorpus 版 (精华区)
寄信人: ooze (烂泥)
标 题: 713
发信站: 哈工大紫丁香 (2002年03月08日21:11:50 星期五)
来 源: mtlab4.hit.edu.cn
773441 2002/03/08 13:11:05.246 Accepted 0:00.000 64
Bozhang ,HIT,P.R.China ... C++ 713 - Adding Reversed Numbers
void Int2Str(int a,char *s,int v)
{
int i=0,j;
char *p="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ",ch;
while (a>0) {
s[i]=p[a%v];
a/=v; i++;
}
s[i]=0;
for (j=0;j<i/2;j++) {
ch=s[j]; s[j]=s[i-j-1]; s[i-j-1]=ch;
}
}
int Str2Int(char *s)
{
int i,j=0;
for (i=0;s[i]!=0;i++) {
if ((s[i]<'0')||(s[i]>'9')) return 0;
j*=10;
j+=(s[i]-48);
}
return j;
}
void main()
{
int n,a,b,i,j,k;
char s1[15],s2[15],ch;
scanf("%d",&n);
while (n>0) {
n--;
scanf("%d%d\n",&a,&b);
Int2Str(a,s1,10);
Int2Str(b,s2,10);
k=strlen(s1);
for (i=0;i<k/2;i++) {
ch=s1[i]; s1[i]=s1[k-i-1]; s1[k-i-1]=ch;
}
k=strlen(s2);
for (i=0;i<k/2;i++) {
ch=s2[i]; s2[i]=s2[k-i-1]; s2[k-i-1]=ch;
}
a=Str2Int(s1)+Str2Int(s2);
Int2Str(a,s1,10);
k=strlen(s1);
for (i=0;i<k/2;i++) {
ch=s1[i]; s1[i]=s1[k-i-1]; s1[k-i-1]=ch;
}
for (i=0;i<k-1;i++) if (s1[i]!=48) break;
for (j=i;j<k;j++) printf("%c",s1[j]); printf("\n");
}
}
--
※ 来源:·哈工大紫丁香 bbs.hit.edu.cn·[FROM: mtlab4.hit.edu.cn]
--
※ 转寄:.哈工大紫丁香 bbs.hit.edu.cn.[FROM: mtlab4.hit.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.646毫秒