計算兩數相加共有幾次進位
[心得]
1.迴圈裡要記得初始 carry=0
#include <stdio.h>
int main()
{
int a,b;
int r1,r2;
int carry;
int counter;
while(scanf("%d %d",&a,&b))
{
if(a==0&&b==0) break;
counter=0;
carry=0;
while(a!=0||b!=0)
{
r1=a%10; r2=b%10;
a=a/10; b=b/10;
carry=(carry+r1+r2)/10;
if(carry) counter++;
}
if(counter==0) printf("No carry operation.\n");
else if(counter==1) printf("1 carry operation.\n");
else printf("%d carry operations.\n",counter);
}
return 0;
}
全站熱搜