正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。
现给定A、DA、B、DB,请编写程序计算PA + PB。
输入格式:
输入在一行中依次给出A、DA、B、DB,中间以空格分隔,其中0 < A, B < 1010。
#include <stdio.h> #include <stdlib.h> #include <string.h> #define N 10 char *Add(char a,char b); int main () { char strA[N+1],strB[N+1]; char charA,charB; scanf("%s %c %s %c",strA,&charA,strB,&charB); char newA[N+1],newB[N+1]; int i,acount=0,bcount=0; for( i=0;i<strlen(strA);i++) { if( charA-strA[i]==0) newA[acount++]=charA; } for( i=0;i<strlen(strB);i++) { if(charB-strB[i]==0) newB[bcount++]=charB; } if(acount+bcount==0 ||( charA-'0'==0 && charB-'0'==0)) { printf("0\n"); return 0; } long result=atol(newA)+atol(newB); char res[N+2]; sprintf(res,"%d",result); printf("%s\n",res); system("pause"); return 0; }
原文地址:http://blog.csdn.net/lchinam/article/details/42970721