数字相加问题。

来源:互联网 发布:淘宝销售额排行榜 编辑:程序博客网 时间:2024/05/17 04:53
#include<stdio.h>#include<stdlib.h>#include<string.h>void main(){int n;//a b c 分别用来存输入和存结果char a[1000]="",b[1000]="",c[1001]="";scanf("%d",&n);int j=1;while(n){scanf("%s %s",a,b);printf("Case %d:\n",j);printf("%s + %s = ",a,b);int lena = strlen(a);int lenb = strlen(b);int i=0;int max;//选择最大的if(lena>=lenb){max=lena;}else{max=lenb;}//余数int p=0;for(;i<max;i++){    if(!a[i]){    //为空        a[i]='0';    }    if(!b[i]){        b[i]='0';    }    c[i]=a[i]+b[i]-'0'+p-'0';//  printf("c[i]= %d",c[i]);    if(c[i]>=10){    p=1;    c[i]=(c[i])%10;    }else{    p=0;    }}if(p==1)c[i]=p;while(i>=0){    if(i>=max && c[i]==0){    //第一次进来        i--;        continue;    }    printf("%d",c[i]);    i--;}if(n!=1)printf("\n\n");elseprintf("\n");n--;j++;}}
0 0
原创粉丝点击