【NYOJ】[74]小学生算术

来源:互联网 发布:百度云mac旧版本 编辑:程序博客网 时间:2024/05/05 05:03

这里写图片描述

模拟进位
刚开始想可能会忽视记录进位次数之后,真的要”进位”

#include<stdio.h>int main() {    int a,b;    while(scanf("%d %d",&a,&b),a!=0||b!=0) {        int cnt=0;        int m[6];        m[0]=a%10;        m[3]=b%10;        m[1]=a/10%10;        m[4]=b/10%10;        m[2]=a/100;        m[5]=b/100;        if(m[0]+m[3]>9) {            cnt++;            m[1]+=m[0]+m[3]-9;        }        if(m[1]+m[4]>9) {            cnt++;            m[2]+=m[1]+m[4]-9;        }        if(m[2]+m[5]>9) {            cnt++;        }        printf("%d\n",cnt);    }    return 0;}

标程的思路是一样的
不过没用数组显得乱一些

#include<stdio.h>int main() {    int a,b,c,d,e,f,n,m,i;    for(;;) {        scanf("%d%d",&n,&m);        if(n==0&&m==0)            return 0;        else {            i=0;            a=n/100;            b=n%100/10;            c=n%10;            d=m/100;            e=m%100/10;            f=m%10;            if(c+f>=10) {                i+=1;                b+=1;            }            if(b+e>=10) {                i+=1;                a+=1;            }            if(a+d>=10) {                i+=1;            }            printf("%d\n",i);        }    }    return 0;}

题目地址:【NYOJ】[74]小学生算术

0 0
原创粉丝点击