您的位置:首页 > 其它

不一样的A+B

2016-04-16 15:21 288 查看
#include<stdio.h>

#include<string.h>

#include<math.h>

int main()

{

    char plus[1]="+",ch[105],c[105],b[105][105]={"zero","one","two","three","four","five","six","seven","eight","nine"};

    int select=0,j,l=0,ii=0,blank=0,q=0,i,A=0,B=0,temp=0,num[100],count[100],k=0;

        while(gets(ch)!=NULL)

        {

            select=0,l=0,ii=0,blank=0,q=0,A=0,B=0,temp=0,k=0;

            int len=strlen(ch);

        for(i=0;i<len;i++)

        {

            q=0;

            c[ii]=ch[i];//利用空格对输入总的字符串进行单个数字英文进行拆分

            if(ch[i]=='+')

                select=1;//为了区分+前后的两个数,方便利用不同的数字数组进行存储

                if(ch[i]==' ')

            {

                q=1;//用来对ii的首项元素下标赋初0

                c[ii]='\0';

                for(j=0;j<10;j++)

                {

                    if(strcmp(b[j],c)==0&&select==0)//字符串和英文字母比较

                        {

                            num[l]=j;//用来统计各个数字

                            l++;//1、统计数字的个数 2、为了便于计算总合

                        }

                    if(strcmp(b[j],c)==0&&select==1)

                    {

                        count[k]=j;//和上面同理

                        k++;

                    }

                }

               // strcpy(div[blank],c);//对字符串

                blank++;

                if(blank>0)

                {

                    ii=0;//为了使c字符数组使其每次存完一个字符串后然后又重新从0开始继续存放

                }

            }

            if(q==0)

                ii++;//没有出现空格时候继续赋值

        }

            for(i=0;i<l;i++)

                {

                    int y=pow(10,l-i-1);//对每个数字按照其所在的十分位百分位等进行总合

                    A+=num[i]*y;

                }

            for(i=0;i<k;i++)

                 {

                    int g=pow(10,k-i-1);

                    B+=count[i]*g;

                }

            if(A+B!=0)//题目要求zero+zero=0时候停止不运行

                printf("%d\n",A+B);

            else

                break;

        }

        return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: